【发布时间】:2011-04-25 16:20:12
【问题描述】:
我知道 WPF 数据网格有 "RowEditEnding" 事件,但我需要在 Row 提交后触发该事件以检查新添加的行是否重复并合并重复的行。我的数据网格将“CanUserAddRow”属性设置为 True。
我正在使用扩展 ObservableCollection 的 EntityObservableCollection 来将我的实体与集合同步。因此,我考虑了 OnCollectionChanged 事件,但是一旦用户单击新项目占位符行,就会引发“InsertItem”事件,这意味着该对象仍然是空的,我无法检查是否重复。
无论如何我可以引发 RowEditEnded 事件吗?
谢谢...
【问题讨论】:
-
可能有一些验证事件。你可以检查一下。
-
您是否真的尝试对 CollectionChanged 进行足够的了解?内部检查可以让您知道项目何时实际插入或更新,因此您可以每次检查以及是否填写了字段然后执行更改逻辑:stackoverflow.com/questions/4587448/collectionchanged-sample。在我意识到这种方法的局限性(切换句柄然后强制提交和刷新等)之前,我投票赞成 @Mah,并且对 collectionchanged 进行了更多思考(但现在不能删除投票)
标签: wpf wpfdatagrid observablecollection