我正在使用一个silverlight数据网格,该数据网格绑定到一个可观察的业务对象集合。 我们不支持在网格中对象进行内联编辑,但我们会为用户选择的行显示相应的编辑面板。 当用户从此面板提交编辑时,我将持久保存数据库中的更改,但我希望更改也反映在网格中。
我知道通过使用observable collection和notify属性已更改,如果我更改了所选行绑定的对象,则更改将显示在网格中。
但是,由于我不是内联编辑,我需要在observable集合中搜索对象,并在observable集合中更改业务对象的实例。
我想避免在集合中循环找到所述对象,但我担心这是唯一真正的方法。 没有其他更有效,性能更差的方法,我不知道从集合中检索对象是否正确?除了简单地循环直到我点击它?
答案 0 :(得分:2)
可以将编辑网格绑定到显示网格的选定项目吗?由于它们是引用,因此会将更改推送/拉入可观察集合,然后可以保留它。
答案 1 :(得分:0)
在发生一些关键异常后,我无法跟踪,我决定避免对编辑面板进行数据绑定,并采用Jeffrey L Whitledge的建议。 我正在维护对面板中显示的对象的引用,并且通知已更改,当用户提交更新面板并且我将更改保留到业务对象时,我将更改设置为绑定的网格行对象
thx guys