0

いくつかの関連オブジェクト(ノードとライン(、これらのVMをビューに表示(同期)してオブジェクト接続を維持する方法)で構成されるViewModelがあります。DataTemplateを使用してモデルをビューにマップしますが、各オブジェクトは同期されます(強力なバインディングを使用して)関連するオブジェクトにリンクしますが、このDataTemplateで生成されたUI要素をリンク(および同期)するにはどうすればよいですか?ここでは、別の観点から問題を説明します: ビューモデルとビューの同期

4

3 に答える 3

0

ビューの同期を維持するには、バインディングを使用する必要がありますが、バインディングソースは特定のインターフェイスを実装するか、依存関係のプロパティである必要があります。実装する必要のあるコレクションINotifyCollectionChangedと使用するプロパティINotifyPropertyChangedの場合、ソースを変更すると、ビューも変更されます。

于 2011-01-15T08:32:08.920 に答える
0

INotifyPropertyChangedを実装し、ICollectionChanged(ObservableCollection)を使用してビューにバインドすることに加えて、データの編集をサポートする場合は、IEditableObjectの実装を検討できます。

このインターフェースを使用すると、編集アクションを元に戻すことができます。IEditableObjectを実装しない場合、変更をキャンセルするときにデータソースに戻って、を元の値にリセットする必要があります。このインターフェースは、DataGridでもサポートされています。

于 2011-01-15T08:39:27.993 に答える
0

Relaying Command Logic を使用して、VM と View を同期できます。

ここでサンプルワークアウトを見ることができます

MVVMを使用してWPFでウィンドウの「WindowState」プロパティをバインドする

于 2011-01-15T09:14:04.660 に答える