2012-03-31 19 views
2

これはBlendで作成された私のUserControl次のとおりです。WPFユーザーコントロールの編集可能なプロパティ

<StackPanel Orientation="Horizontal" Background="#FF0084FF" Height="400"> 
     <TextBlock TextWrapping="Wrap" Margin="10,0,20,0" Text="Kategorija1" FontFamily="Segoe Print" FontWeight="Bold" FontSize="26.667" RenderTransformOrigin="0.5,0.5" Foreground="White" TextAlignment="Center" VerticalAlignment="Center"> 
      <TextBlock.RenderTransform> 
       <TransformGroup> 
        <ScaleTransform/> 
        <SkewTransform/> 
        <RotateTransform Angle="-90"/> 
        <TranslateTransform/> 
       </TransformGroup> 
      </TextBlock.RenderTransform> 
     </TextBlock> 

は今、私は私が背後にあるC#のコードでそれを変更することができるようにTextBlockテキストプロパティを編集可能にします。

どうすればよいですか?

答えて

4

でアクセスすることができます。Name =「myTextBlock」

、あなたが使用することができます後ろのコードでmyTextBlock.Text =「いくつかの他のテキスト」

<StackPanel Orientation="Horizontal" Background="#FF0084FF" Height="400"> 
    <TextBlock x:Name = "myTextBlock" TextWrapping="Wrap" Margin="10,0,20,0" Text="Kategorija1" FontFamily="Segoe Print" FontWeight="Bold" FontSize="26.667" RenderTransformOrigin="0.5,0.5" Foreground="White" TextAlignment="Center" VerticalAlignment="Center"> 
     <TextBlock.RenderTransform> 
      <TransformGroup> 
       <ScaleTransform/> 
       <SkewTransform/> 
       <RotateTransform Angle="-90"/> 
       <TranslateTransform/> 
      </TransformGroup> 
     </TextBlock.RenderTransform> 
    </TextBlock> 
</StackPanel> 

あなたはクラスの外でそれを変更する必要がある場合は、Xを使用することができますどのように、同様にそれを公開するためにFieldModifierを外部のクラスはそれを変更することができます。

<StackPanel Orientation="Horizontal" Background="#FF0084FF" Height="400"> 
    <TextBlock x:Name = "myTextBlock" x:FieldModifier="public" TextWrapping="Wrap" Margin="10,0,20,0" Text="Kategorija1" FontFamily="Segoe Print" FontWeight="Bold" FontSize="26.667" RenderTransformOrigin="0.5,0.5" Foreground="White" TextAlignment="Center" VerticalAlignment="Center"> 
     <TextBlock.RenderTransform> 
      <TransformGroup> 
       <ScaleTransform/> 
       <SkewTransform/> 
       <RotateTransform Angle="-90"/> 
       <TranslateTransform/> 
      </TransformGroup> 
     </TextBlock.RenderTransform> 
    </TextBlock> 
</StackPanel> 
+0

+1:x:FieldModifier。私はそれを知らなかった。 –

2

コード内のTextBlockを編集するには、そのコードにアクセスできる名前を付ける必要があります。

あなたの背後にあるコードで今すぐ
<TextBlock Name="_textBox" ... 

単純Xを使用してのTextBlockに名前を付けた名前_textBox

関連する問題