需要があります:ListViewのためのコラム、コンテンツの表示は、異なるデータ要件は同じではありません。例えば、列はブール型の属性を結合した場合、ときに値がtrue、ボタンまたは他のコントロールを表示し、値がfalseの場合、画像を表示します。
この要求に応じて、溶液は、一般の2つの異なるデータテンプレートを作成することだと思います。
次いでDataTemplateSelector、出力するテンプレート選択テンプレートに応じて異なる値を作成します。
続いてリストビューで、あなたはCellTemplateSelectorのGridViewColumnのために割り当てることができます。
データは静的な表示である場合には、この方法を使用することで問題を解決することができます。しかし、問題は、プログラムが実行されている場合、CellTemplateSelectorを発見したセルの値が変更され、彼は値の変更をバインドされていなかったため、自動的にテンプレートを切り替え、もう動作しないということです。したがって、私のニーズのために、このテンプレートセレクタの道が満たされていない、別の方法を見つける必要があります。MSDNフォーラムで解決策を見つけるために、見つけるためのネットワークを通じ、核となるアイデアは、動的テンプレートを変更するには、データを通じてDatatriggerをトリガすることです。
最初のステップは、2つの異なるデータ・テンプレートを定義します。
ステップ2:現在のテンプレートのデータ型を定義し、次にContentControlにデータテンプレートに配置され、我々はデータを増やすことができ、異なる値に基づいてContentControlにContentTemplateプロパティの変更をトリガし、達成するためにContentControlにでスタイルの変更をトリガー必要があります。次のように(画像は、元のソースから取得されます)。