我正在使用基于{已更新和未更新}的枚举的listView分组。在我的例子中,它们是一个调用update的按钮,如果行在更新组中,我只想禁用它。请参见图像中的。
在更新部分中的列表中,我希望应该禁用该按钮。我使用的是Here中的一个示例
发布于 2017-12-25 08:53:02
IsEnabled={Binding ProperyNameOnYourViewModel, Mode=OneWay}
假设1)你的虚拟机实现了INotifyPropertyChanged
并在适当的时候触发了适当的事件(通常是由属性的setter负责的);2)你的控件本身知道如何在IsEnabled=false
上做出可视化的反应,比如改变颜色或者你想让它做的任何事情。
由于您得到的是枚举而不是bool,因此坚持我所建议的解决方案的最简单方法是使用另一个属性来扩展您的VM,该属性会一直重新计算布尔标志。然后,您可以不从bool
属性( IsEnabled
实际绑定到该属性)中调用PropertyChanged
事件,而是从WPF属性中调用,以便每当它更改时,WPF都会收到通知,通知它布尔值属性也已更改。
否则,使用转换器来解决这个问题,这需要更多的代码。
https://stackoverflow.com/questions/47966754
复制相似问题