2

これが私のXamlです

 <Window.Resources>
    <sampleData:MainWindow x:Key="DataSource"/>
    <DataTemplate x:Key="bobReferencer">                      
        <TextBlock Text="{Binding Name}" >
            <TextBlock.Style>
                <Style TargetType="TextBlock">
                    <Style.Triggers>
                        <DataTrigger Binding="{Binding HasErrors}" Value="true">
                          //what goes in here?
                        </DataTrigger>
                    </Style.Triggers>
                </Style>
            </TextBlock.Style>
        </TextBlock>                                            
    </DataTemplate>    
</Window.Resources>

Codebehind (1 つの xaml 参照)

public class bob
{

    public string Name
    {
        get;
        set;
    }

    public bool HasErrors
    {
        get;
        set;
    }
 }

基本的に私がやりたいことは、HasErrors が true の場合、トリガーを介して Name を赤で表示することです。しかし、私の xaml は適切に形成されていません。これに関する提案はありますか?このリンクも調べましたが、あまり役に立ちませんでした。
トリガーを使用して TextBlock の前景色を変更するにはどうすればよいですか?

4

2 に答える 2

4

あなたはほとんどそこにいました..

        <Style TargetType="TextBlock">
            <Style.Triggers>
                <DataTrigger Binding="{Binding HasErrors}" Value="true">
                  <Setter Property="Foreground" Value="Red"/>
                </DataTrigger>
            </Style.Triggers>
        </Style>
于 2013-10-18T15:53:57.810 に答える
2

DataTrigger 内にセッターを追加する

 <Setter Property="Foreground" Value="Red"/>
于 2013-10-18T15:56:13.863 に答える