私は、ネストされたコンテンツコントロールのシステムを作成して、オートメーションシステムのユーザー作成ネットワークノードを視覚的に表現したいと考えています。MVVMを使用したネストされた動的コンテンツコントロール
単純に、私はノード「x」を持ち、それらはそれぞれ、チャネル「z」をホストするモジュール「y」を含む。
これまで、私はViewModelでこれをすべてインスタンス化するためのシステムをセットアップしました。 (と属性:名前、インデックス)y
はList<z>
を含むモデルである、 :(名前、IDおよび属性)z
は、チャネルのモデルである(属性 私はx
がList<y>
を含むモデルですList<x>
を持っています:名前、状態、コマンド)。
これを私のビューに表示したいと思います。
次のように私はこれを実行したい方法は、List<x>
における各モデルx
ため、そのアイテム・ソースこのモデルx
でList<y>
あるヘッダー付きコンテンツコントロール(またはいくつかの他のコントロール)があるはずです。コンテンツコントロールには、「name」属性のx
も表示されます。
このコンテンツコントロールの各y
のデータテンプレートは、このモデルのList<z>
である類似したコンテンツコントロールである必要がありますy
。コンテンツコントロールには、「名前」属性y
も表示されます。
最後に、このコンテンツコントロールの下の各モデルz
は、モデルの '状態'属性に「ischecked」状態をバインドするCheckBoxとして表示され、 'name'属性の内容になります。 'コマンド'属性。
私の質問は、 MVVMでこれを行う方法はありますか?もしそうなら、私はそれをどうやって設定するのですか?
私は、これらの3つのリストをバインドできるViewModel DataContextを持つ特別なUserControlを作成する必要があると思います。例えば、 ' –
mikes