我将BindingList的两种方式绑定到列表框。绑定列表包含许多图像,如果将项目添加到绑定列表或从绑定列表中删除项目,这些图像显然只会更新列表框。我怎样才能让绑定列表在项目被修改时也引发listchanged事件?绑定列表和UI控件,在编辑时不更新
编辑:我发现我遇到的问题是一个对象的属性没有被改变,而是基础对象。
BindingList<ImageSource>();
这不会工作,但如果我这样做:
BindingList<Image>();
然后设置Image.Source绑定路径,这将正确地更新,这是因为图像的性质发生了变化,但在第一个例子中,只有列表中的直接项目发生了变化。那么我怎样才能获得与第二个例子相同的行为?
FINAL EDIT:看来,使用ObservableCollection而不是BindingList修复了这个问题。我的印象是,他们在收集收集的变化时是相同的。下面的全部答案
我明白这一点,但它似乎没有按预期工作。实际的绑定在数据模板中是这样的:' '据我所知ImageSource有一个依赖项属性,有一个OnPropertyChanged方法,为什么它不工作? –
Monokh
@ gummy24:'Image.Source'属性不是问题,在这种情况下'TheImage'类型需要通知更改。 –