2011-01-04 3 views
1

現在、私は同じレイアウトのデータのコレクションを表示するUserControlを持っています。したがって、ObjectAのコレクションとObjectBのコレクションで、1つのコントロールをインスタンス化できます。次に、正しいDataTemplatesを選択するためにTemplateSelectorsを使用します。WPF:異なるGridViewsのTemplateSelectors

後でリストをGridViewとして設定して、リスト自体に詳細を表示すると考えました。ただし、オブジェクトの各タイプは異なるプロパティを持ち、列の名前は異なり、同じ数量ではありません。私は、ItemTemplateではなく、GridView自体とListViewで設定されていない列などが、それ自体のためのtemplateSelectorを持たないことに気付きました。

私はそれを行う方法がわかりませんでしたが、いくつかの方法が考えられました。

1)私が気づいていない何らかの種類のTemplateSelectorプロパティがあります。

2)私は何とかItemTemplateSelectorでそれを設定することはできません。

3)私はGridViewを動的に行うことができました(難しく、避けたくないかもしれません)。

これを行うには良い方法、チュートリアル、または私が使うことができるsimiliar?

EDIT:

私はListViewコントロールについて少しより多くのことを学んだし、それは私がstaticResourceでGridViewのを定義することができますかなり確信しているビューのプロパティだと。それでもViewSelectorなどが好きです。私はコレクションがそうでない間、アイテムが動的である可能性があるので、これはもちろん意図していなかったと思います。

しかし、もっと多くのタイプのビューが存在する可能性があるグリッドビュー(アイコンビューなど)が存在し、ユーザーが何らかの方法で実装する必要がある場合について考えています。

私が知っている解決策は、トリガーを使用して、コレクションの最初のアイテムに基づいていますが、私はあまり好きではありません。

+0

この情報はこれまでに見つかりましたか。私は同じ要件を持っています。 – Rob

+0

@Rob正しくリコールすれば、全く別のことをしてしまいました。ここに新しい答えがあります。チェックアウトしたくないかもしれません。それが正しいのかどうかを私に知らせてください。 –

答えて

関連する問題