[英]WPF bind IsEnabled property to List's size
我想将IsEnabled
属性(功能区按钮的)绑定到列表大小。 因此,当列表大小 > 0 时, IsEnabled
设置为true
,否则(如果为 0)设置为 false。 你是怎样做的?
绑定到列表Count
属性并创建您自己的ValueConverter
以从int
转换为bool
(在您的情况下,如果 int 大于 0 则返回true
,否则返回false
)。 请注意,当计数更改时,您的列表需要引发PropertyChanged
事件 - 例如ObservableCollection
就是这样做的。
要么使用绑定到列表的 Count 属性的DataTrigger并在 IsEnabled 为零时将其设置为 false ,或者使用ValueConverter 。
但是请注意, List<T>
不会实现INotifyPropertyChanged
,它会通知 Count 属性的更改。 一个ObservableCollection<T>
就可以了。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.