1

私はWPFデータグリッドの問題で少し立ち往生しており、もう一度Google fooが失敗しました。やりたいことは非常に単純に思えますが、一生うまくいきません。

このアプリケーションにはCaliburn Microを使用していることを心に留めておいてください

ObservableCollection<Item>項目自体がIsDirtyNotifyOfPropertyChangeフラグを使用して変更を処理することにバインドされているデータグリッドがあるため、これらの項目を編集することは問題ではありませんが、追加される新しい項目を処理する方法がわかりませ。新しいアイテムのインライン追加を許可するデータグリッド。

ただし、追加された新しいアイテムを検出しようとすると問題が発生します。データベース サービスにそれを起動するために、多くの人がこれを検出するためにCollectionChangedイベントを使用しObservableCollectionているようですが、これはユーザーが即座に起動するようです。{NewItemPlaceholder}データが挿入される前に、データグリッドの一部をクリックします。

private void ItemList_CollectionChanged(object sender, NotifyCollectionChangedEventArgs e)
{
    if (e.NewItems != null)
    {
        foreach (Item i in e.NewItems)
        {
            _itemManager.Insert(i);
        }
    }
}

これは私が使用しているコードです。おそらく私は間違いを犯しましたが、編集が終了した後にのみこれを起動する方法がわかりません。残念ながら、Googleはどのようにしても同じ結果を返すようです私の質問を言い換えてみてください。ここにいる誰かが、この質問に対する比較的簡単な答えを教えてくれることを願っています。

物事がどのように機能するかを示すためにさらにコードが必要な場合 ( など_itemManager)、必要に応じて提供できます。

4

1 に答える 1