0

ViewModel のプロパティに a のプロパティをバインドしていItemsSourceます。DataGrid次に、次のようにアイテム ソースICollectionViewを使用してデフォルト ビューを作成します。DataGrid

_displayItemsView = CollectionViewSource.GetDefaultView(_displayItems);

は で_displayItemsありList_displayItemsViewICollectionViewです。

今私が抱えている問題は、ユーザーが次のようにデータグリッドをフィルタリングできるようにしていることです:

                        _displayItemsView.Filter = delegate(object item)
                        {
                            DISPLAY_ITEM displayItem = (DISPLAY_ITEM)item;
                            if ((displayItem.RETAIL_ITEM_DPCI.ToString().ToUpper().Contains(value.ToUpper()))
                                      .
                                      .
                                      .

これはほとんどの場合うまく機能しますが、ユーザーが現在行を編集または追加している場合DataGrid、未処理の例外が によってスローされますICollectionView。次のいずれかを検出するにはどうすればよいですか。

  1. DataGrid現在修正中、または
  2. ICollectionViewフィルタリングする状態ではありませんか?

あらゆるガイダンスを歓迎します。私はアイデアを受け入れます。ありがとう!

4

1 に答える 1