这是我的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>
代码隐藏(一个 xaml 引用)
public class bob
{
public string Name
{
get;
set;
}
public bool HasErrors
{
get;
set;
}
}
基本上我想做的是,如果 HasErrors 为真,那么我希望名称通过触发器显示为红色。但是我的 xaml 格式不正确。对此有什么建议吗?我也查看了此链接,但没有太大帮助。
How can I change the Foreground color of a TextBlock with a Trigger?
最佳答案
你快到了......
<Style TargetType="TextBlock">
<Style.Triggers>
<DataTrigger Binding="{Binding HasErrors}" Value="true">
<Setter Property="Foreground" Value="Red"/>
</DataTrigger>
</Style.Triggers>
</Style>
关于c# - 通过触发器更改文本 block 中文本的颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19453815/