mcpField
S
syncfusion-wpf-tree-navigator

syncfusion-wpf-tree-navigator

github.com/syncfusionデザイン・UI5154 回インストール2 週間前に更新
リポジトリ

syncfusion-wpf-tree-navigator について

WPF 開発者向けに、階層データをコンポーネント内で順にたどる SfTreeNavigator の使い方を解説します。データバインディング、2 種類のナビゲーションモード、選択項目の取得と設定を扱います。

主な機能

  1. 01階層項目のネスト
  2. 02ItemsSource によるデータバインディング
  3. 03Default と Extended のモード
  4. 04ルートヘッダーのカスタマイズ
  5. 05選択項目の取得と設定

活用シーン

  1. 01製品カテゴリのナビゲーションを構築
  2. 02部門階層を閲覧
  3. 03ネストした業務オブジェクトをバインド
  4. 04パンくずで現在の階層を表示

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/syncfusion/wpf-ui-components-skills --skill syncfusion-wpf-tree-navigator

インストール後、Claude Code で/syncfusion-wpf-tree-navigatorを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
getting-started.md
header-and-selection.md
navigation-mode.md
populating-items.md

詳細

SfTreeNavigator の実装(WPF)

このスキルを使用するタイミング

次のような場合に、このスキルを使用します。

  • WPF でインプレースの階層型ドリルダウンナビゲーションを構築する(ポップアップや別パネルは使用しない)
  • 独自の領域内で展開する複数レベルのツリー構造を表示する
  • 製品/カテゴリ/部門の階層ナビゲーションを表示する
  • パンくずリスト形式(Default)と積み重ねヘッダー形式(Extended)のどちらを使用するか選ぶ
  • ネストされたビジネスオブジェクトのコレクションをツリーナビゲーターの項目にバインドする
  • 現在選択されている項目をプログラムで設定または取得する

コンポーネントの概要

SfTreeNavigator                        (root container)
├── Header                             — root label text (always visible)
├── HeaderTemplate                     — customize root header appearance
└── SfTreeNavigatorItem  (×N)          (each level item)
    ├── Header                         — item display text
    └── SfTreeNavigatorItem  (×N)      (nested child items, unlimited depth)

アセンブリ: Syncfusion.SfTreeNavigator.WPF
名前空間: Syncfusion.Windows.Controls.Navigation
XAML プレフィックス: navigation:(一般的なエイリアス)


ドキュメントとナビゲーションガイド

はじめに

📄 参照: references/getting-started.md

  • アセンブリ参照と名前空間
  • SfTreeNavigatorItem を使用した宣言型 XAML
  • C# コードビハインドでの作成
  • SfTreeNavigator のヘッダー
  • SfSkinManager を使用したテーマ設定
項目の設定

📄 参照: references/populating-items.md

  • Items コレクションを使用した宣言型の項目
  • ItemsSource によるデータバインディング
  • ObservableCollection を使用した Model と ViewModel のネスト
  • HierarchicalDataTemplate を使用した ItemTemplate
  • テンプレート内の ItemsSource バインディングによる子レベルの接続
ナビゲーションモード

📄 参照: references/navigation-mode.md

  • Default — 上部に単一のヘッダーと戻るボタンを表示
  • Extended — ルートから現在のレベルまでパンくずリスト形式のヘッダーを積み重ねて表示
  • 各モードの使用場面
  • Extended モードでの TreeNavigatorHeaderItem のスタイル設定
  • 選択ガイド
ヘッダーと選択

📄 参照: references/header-and-selection.md

  • HeaderTemplate — ルートヘッダーの外観をカスタマイズ
  • Header — ルートのタイトル文字列
  • SelectedItem — 選択された項目を取得/設定
  • SelectedItem の TwoWay MVVM バインディング
  • プログラムによる選択

クイックスタート

xmlns:navigation="clr-namespace:Syncfusion.Windows.Controls.Navigation;assembly=Syncfusion.SfTreeNavigator.WPF"

<navigation:SfTreeNavigator Header="Enterprise Toolkit"
                             Width="300" Height="400">
    <navigation:SfTreeNavigatorItem Header="WinRT (XAML)">
        <navigation:SfTreeNavigatorItem Header="Chart"/>
        <navigation:SfTreeNavigatorItem Header="Tools"/>
    </navigation:SfTreeNavigatorItem>
    <navigation:SfTreeNavigatorItem Header="Metro Studio"/>
</navigation:SfTreeNavigator>
using Syncfusion.Windows.Controls.Navigation;

SfTreeNavigator navigator = new SfTreeNavigator { Header = "Enterprise Toolkit" };

SfTreeNavigatorItem winrt  = new SfTreeNavigatorItem { Header = "WinRT (XAML)" };
SfTreeNavigatorItem chart  = new SfTreeNavigatorItem { Header = "Chart" };
SfTreeNavigatorItem tools  = new SfTreeNavigatorItem { Header = "Tools" };
SfTreeNavigatorItem metro  = new SfTreeNavigatorItem { Header = "Metro Studio" };

winrt.Items.Add(chart);
winrt.Items.Add(tools);
navigator.Items.Add(winrt);
navigator.Items.Add(metro);
this.Content = navigator;

一般的なパターン

シナリオ方法
静的な階層XAML で SfTreeNavigatorItem を宣言的にネストする
動的なデータ駆動型の階層ItemsSource + HierarchicalDataTemplate
パンくずリストのパス全体を表示するNavigationMode="Extended"
上部に戻るボタンを 1 つ表示するNavigationMode="Default"
ルートタイトルのスタイルをカスタマイズするHeaderTemplate
読み込み時に項目をあらかじめ選択するViewModel コンストラクターでの SelectedItem バインディング
選択に応答するSelectedItem の TwoWay バインディング + ViewModel プロパティ

主なプロパティ

プロパティ説明
Headerナビゲーター上部に表示されるルートラベルのテキスト
HeaderTemplateルートヘッダーの外観をカスタマイズする DataTemplate
NavigationModeDefault(戻るボタン)または Extended(積み重ねヘッダー)
ItemsSourceデータバインディングによる項目設定に使用するデータコレクション
ItemTemplateデータバインディングされた項目に使用する HierarchicalDataTemplate
SelectedItem現在選択されている項目を取得または設定

SfTreeNavigatorItem のプロパティ:

プロパティ説明
Header項目に表示するテキスト
Items子項目のコレクション

コメント