【问题标题】:CellEditEnded happens too lateCellEditEnded 发生得太晚了
【发布时间】:2012-05-17 02:08:53
【问题描述】:

当用户更改单元格 (DataGridCheckBoxColumn) 的值,然后单击数据网格之外的另一个 UI 元素时,另一个 UI 元素的单击事件会在数据网格 CellEditEnded 之前触发。

这是一个问题,因为在我的情况下,其他 UI 元素是一个按钮,它更改了提供数据网格的 PagedCollectionView 的 Filter 属性(本质上它是模拟要编辑的行的“移动到第 2 页”)例外是抛出的是:

在 AddNew 或 EditItem 事务期间不允许使用“过滤器”。

如何在设置过滤器之前强制完成 EditItem(或 AddNew)?

【问题讨论】:

    标签: silverlight data-binding datagrid pagedcollectionview


    【解决方案1】:

    我不知道 silverlight,但在 WPF 中,您可以尝试在设置过滤器之前提交事务:

    if ((collection as IEditableCollectionView).IsAddingNew) (collection as IEditableCollectionView).CommitNew(); // or .CommitEdit();
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2010-11-16
      • 1970-01-01
      • 2011-04-01
      • 1970-01-01
      • 2022-01-12
      • 1970-01-01
      • 2020-06-24
      相关资源
      最近更新 更多