TreeViewでグラフを作成しています。以下はスクリーンショットです。これまでのところ、すべてがスタイリングで行われています。TreeViewのItemsPanelを水平StackPanelに設定しています。 (ペーパークリップは、画像のないアイテムの単なるプレースホルダーです。)
最下位レベルの子がLeavesであることに注意してください。彼らには子供がいません。
ここに質問があります:私はそれらのアイテムを別のWrapPanelに入れたいです。問題は、アイテムに明らかに子供がいる子供と子供がいない子供(枝と葉)が含まれる可能性があることです。ItemsPanelはStackPanelである必要があるため、水平方向のレイアウトが適切になります。ただし、StackPanelの最後のコントロールは、すべての子のない子を持つWrapPanelである必要があります。
これは、WrapPanelで葉を表示するためにつなぎ合わせたスクリーンショットです。
私が試したこと
独自のアイテムパネルコンバーターを作成しようとしましたが、アイテムパネル全体がラップパネルに変換されます。
別のツリービューをItemTemplateに追加し、それを別のコレクションにバインドしようとしましたが、それは正しい外観ではありません。
私が試したことのないもの
私が話しているWrapPanelは、ほとんどブランチのようなものです。ただし、ブランチ自体は空ですが、子が含まれています。たぶん、プロパティに基づいてノードのスタイルを変更することができます。次に、画像などを表示する代わりに、データテンプレートはWrapPanelになります