你有两个选择,因为你没有提供任何具体的代码,我将只提供一些资源:
第一个选项是使用触发器更新文本的属性.这将在xaml中实现,只需观察绑定属性以获取特定值(在您的情况下为true或false)并相应地更新颜色.这也是@Kylo-Ren所做的.有关这方面的信息可以在这里找到:
http://www.wpf-tutorial.com/styles/trigger-datatrigger-event-trigger/
另一种选择是使用IValueConverter
接口并将布尔值转换为颜色.这就是@Stefan所做的.更多信息:
http://www.codeproject.com/Tips/868163/IValueConverter-Example-and-Usage-in-WPF
如果您只拥有该属性可以采用的非常有限的值范围和/或您想要一次更新多个可视属性,我会推荐第一个版本.
第二个版本更适用于更复杂的转换(例如将完整对象转换为格式化字符串),但不能轻易用于更新多个可视属性.
经验法则:
我想指出一个州=>使用触发器
我想以特定的方式显示对象值(例如Text)=>使用IValueConverter
使用下面(改变控制类型与你正在使用的):
<TextBox Text="content" >
<TextBox.Style>
<Style TargetType="TextBox">
<Style.Triggers>
<DataTrigger Binding="{Binding ConnectionStatus}" Value="true">
<Setter Property="Background" Value="Red"></Setter>
</DataTrigger>
<DataTrigger Binding="{Binding ConnectionStatus}" Value="false">
<Setter Property="Background" Value="Green"></Setter>
</DataTrigger>
</Style.Triggers>
</Style>
</TextBox.Style>
</TextBox>
Run Code Online (Sandbox Code Playgroud)