复选框未按预期更新

时间:2009-06-18 05:03:57

标签: wpf vb.net .net-3.5 binding

我有一个绑定到业务对象列表的列表框。列表框中的项目使用itemtemplate进行格式化。 itemtemplate包含一个绑定到业务对象的布尔属性的复选框。当我启动应用程序时,单击复选框时,列表中对象的bool prop会发生变化。到目前为止,非常好。

对话框有“全选”和“全部清除”按钮。当我单击这些按钮时,对象上的属性会更改,但复选框不会更新。

select all click事件中的代码是。 。

For Each x As BusObj In _BusObjList
  x.BlockIsInserted = True
Next

我可以单步执行代码并观察对象属性更改但复选框不会更新。有什么建议吗?

谢谢,

2 个答案:

答案 0 :(得分:3)

使用twoway绑定应该有助于我猜

{Binding ..., Path=Text, Mode=TwoWay}

是的,是BlockIsInserted属性依赖吗?或实施INotifyPropertyChanged?

答案 1 :(得分:1)

我遇到了同样的问题,即使绑定设置为双向,并且视图模型表示业务对象正确实现了INotifyPropertyChanged。我找到的(相当强力)解决方案是在表示业务对象集合的属性上的NotifyChanged - 这解决了问题。