データを表示している人に応じて、30個のプロパティを持つオブジェクトがあり、10-12個のプロパティを表示する必要があります。 これらのプロパティは、WPFデータグリッドの列を形成します。私は.Net 4.0を使用しています しかし、これはすべて実行時に発生します。私はMVVMの方法でこれを行う必要があります。 どのようにこれを達成するための方向に感謝します。WPF DataGridでの動的列の生成
について、
データを表示している人に応じて、30個のプロパティを持つオブジェクトがあり、10-12個のプロパティを表示する必要があります。 これらのプロパティは、WPFデータグリッドの列を形成します。私は.Net 4.0を使用しています しかし、これはすべて実行時に発生します。私はMVVMの方法でこれを行う必要があります。 どのようにこれを達成するための方向に感謝します。WPF DataGridでの動的列の生成
について、
あなたが見ることができる限り、2つのオプションがあります。
1)表示するデータの種類を示すViewModelの列挙型プロパティを公開します(ViewableDetailsType
)。ビューでDataGrid
にトリガーを作成し、グリッドのColumns
プロパティを手動で適切な列を表示するように設定することができます。
2)より良い方法は、基礎となるモデルオブジェクト用のラッパー、DTO型ViewModelオブジェクトを作成することです。公開するオブジェクトのビューごとに1つ。その後、適切なラッパーオブジェクトのコレクションをビューに公開し、DataGridは自動列を使用できます。
これは若干の作業ですが、データ隠蔽がViewModelで行われているためMVVMよりも真実ですので、テストすることができます。