1

WPF 4.0 DataGrid の最後に BLANK 行を条件付きで追加しようとしています(コード ビハインドを介して直接ではありません)。私は次のことを試しましたが、無駄です-

私はこのように IEditableCollectionView を取得し、そのインターフェイスで操作しようとしました:

CollectionViewSource.GetDefaultView(myObservableCollection) as IEditableCollectionView

ただし、 CanAddNewプロパティが true になる要因の 1 つは、(Grid がバインドされている) コレクションの基になるオブジェクトに既定のコンストラクターを追加することであるため、意図したとおりには機能しません。

問題: デフォルトのコンストラクターを追加すると、グリッドは常に空白行を追加します。常にではなく、条件を追加したい(ブール値をチェックする)。ViewModel クラスにデフォルトのパラメーターなしのコンストラクターを使用せずにそれを行うにはどうすればよいですか?

4

2 に答える 2

0

モデルのプロパティに CanAddNew をバインドし、条件に応じて true/false に設定できます。

   <DataGrid CanUserAddRows="{Binding Path=YourBooleanProperty}"/>
于 2013-02-19T14:27:57.653 に答える
0

私は今これを行うことができます - 条件に基づいてコレクションに空のアイテムを追加します。次に、ユーザーがコレクションの空のアイテムを編集すると、プログラムで空の行をもう 1 つ追加します。

于 2013-02-20T14:46:04.630 に答える