如何绑定按钮是启用属性到wpf中的枚举

时间:2017-12-25 07:52:33

标签: wpf listview

我正在使用基于枚举的listView分组{已更新且未更新}。在我的情况下,他们是一个调用更新的按钮我只是想要禁用行是否在更新组中。见图。

enter image description here 更新部分中的列表我希望禁用该按钮。我正在使用Here

中的示例

1 个答案:

答案 0 :(得分:2)

IsEnabled={Binding ProperyNameOnYourViewModel, Mode=OneWay}

这将起作用假设1)您的VM实现INotifyPropertyChanged并在适当的时刻触发适当的事件(通常,属性的设置者负责); 2)你的控件本身知道如何在视觉上对IsEnabled=false做出反应,即改变颜色或你想做的任何事情。

由于你有一个enum而不是bool,坚持我建议的解决方案的最简单方法是使用另一个属性扩展你的VM,它会一直重新计算boolean标志。然后,您可能不会从PropertyChanged属性(实际绑定到bool)调用IsEnabled事件,而是从enum属性调用,以便每当它发生更改时,WPF都会收到通知布尔属性也发生了变化。

否则,在转换器的帮助下解决问题,这需要更多的代码。