0

私はこれを持っています:

<ControlTemplate TargetType="Window">
    <TextBlock x:Name="tbFoo" Text="LOREM IPSUM" />
</ControlTemplate>

tbFoo実行時にテキストを変更する方法はありますか?

4

1 に答える 1

2

オプション1:

プロパティを次のプロパティにバインドしますTemplatedParent

<ControlTemplate TargetType="Window">
    <TextBlock x:Name="tbFoo" Text="{TemplateBinding Title}" />
</ControlTemplate>

それで:

<Window Title="My Window"/>

tbFoo「My Window」テキストが表示されます。

オプション 2:使用Triggers:

<ControlTemplate TargetType="Window">
    <TextBlock x:Name="tbFoo"/>

    <ControlTemplate.Triggers>
       <Trigger Property="IsActive" Value="True">
          <Setter TargetName="tbFoo" Property="Text" Value="Window is Active!"/>
       </Trigger>
       <Trigger Property="IsActive" Value="False">
          <Setter TargetName="tbFoo" Property="Text" Value="Window is Inactive!"/>
       </Trigger>
    </ControlTemplate.Triggers>
</ControlTemplate>
于 2013-07-25T19:30:05.780 に答える