c# – WPF将布尔值转换为彩色字符串
我坚持“简单”的转换.我有一个方法.它检查连接.如果建立了连接,则更改我的viewmodel的boolean属性.我想要做的是在我的表单上显示彩色字符串(红色“连接失败”或绿色“连接建立”取决于布尔属性)但我不知道如何做到这一点.
解决方法
你有两个选择,因为你没有提供任何具体的代码,我将只提供一些资源:
第一个选项是使用触发器更新文本的属性.这将在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 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |