2012-02-02 5 views
1

私はオブジェクトのプロパティを示すを持っています。プロパティの1つは大きなバイト配列です。ItemsSourceはコレクションを反復するのではなく、単一のアイテムとして扱いますか?

TreeViewのこれは子ノードのコレクションとして扱われますが、実際には展開/折りたたみが可能な配列全体を示す1つの子ノードが必要です。

例えば、現在

- MyObject 
    Prop1 
    Prop2 
    - PropWithBytes 
     1 
     2 
     3 
     etc 

私が欲しいもの:

- MyObject 
    Prop1 
    Prop2 
    - PropWithBytes 
     1, 2, 3 etc 

が単一ノードとしてコレクションを治療するためのツリーを伝える方法はありますか?

実際のデータを別のノードにしたくない場合は、DataTemplate(これとは対照的にHierarchicalDataTemplate)を書き込んで、適切な場所に表示することができます。代わりにExpanderを使用するDataTemplateを使用して、うまく動作するデータを非表示にすることはできますが、醜いです。

答えて

2

あなたの質問を正しく理解している場合、渡された値がバイト配列かどうかをチェックするValueConverterを使用してみてください(バイト配列の場合は文字列表現を返します)。

+0

これは完璧なことですが、それは子テンプレート内のバイト[]としてパラメータにアクセスする必要がありません(データが大きすぎるとデータをラップすることができます)。私は再びそれを変換する別のコンバータを書くことができたと思うが、それはかなりうんざりしている感じ。 – GazTheDestroyer

+0

あなたは実際の解決策に触発したので答えとしてマークしました。コンバーターを使用して配列を1つのアイテムの別の配列にラップします。素晴らしい、ありがとう! – GazTheDestroyer

関連する問題