mcpField
S
syncfusion-winforms-xptaskbar

syncfusion-winforms-xptaskbar

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

syncfusion-winforms-xptaskbar について

Windows Forms 向けの Syncfusion XPTaskBar を紹介するスキルです。コマンド項目を折りたたみ可能なパネルにまとめ、レイアウト方向、開閉アニメーション、状態の保持、外観設定を扱います。

主な機能

  1. 01項目を折りたたみ可能なパネルに分類
  2. 02縦・横レイアウトの切り替え
  3. 03開閉アニメーションの設定
  4. 04パネルの展開状態を保持
  5. 05色・フォント・画像のカスタマイズ

活用シーン

  1. 01カテゴリ別タスクサイドバーの構築
  2. 02アプリのナビゲーション項目の整理
  3. 03パネルの展開状態の記憶
  4. 04パネル内への子コントロールの配置

インストール

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

$npx skills add https://github.com/syncfusion/winforms-ui-components-skills --skill syncfusion-winforms-xptaskbar

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

同梱ファイル

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

references/
appearance-customization.md
behavior-and-events.md
box-structure.md
getting-started.md
items-and-content.md
layout-orientation.md
padding-spacing-scrolling.md

詳細

Windows Forms での XPTaskBar の実装

目次

このスキルを使用する場面

次のような場合に XPTaskBar を使用します。

  • 展開可能なタスクパネルを作成する - コマンド項目や機能を、折りたたみ可能なグループボックス内に表示します
  • Windows XP 風のメニューを構築する - 従来のタスクサイドバーの UI パターンを再現します
  • 階層的にナビゲーションを整理する - 関連するコマンドをカテゴリ別のボックスにまとめます
  • インタラクティブなタスクリストを実装する - ユーザーがアニメーション付きでタスクカテゴリを展開/折りたたみできるようにします
  • カスタムアニメーションとイベントを追加する - 展開/折りたたみの動作を制御し、ユーザー操作に応答します

コンポーネントの概要

XPTaskBar は、折りたたみ可能なボックス内にまとめられたコマンド項目を表示する Windows Forms コントロールで、Windows XP のタスクサイドバーを模しています。コンポーネントの階層は次のとおりです。

  • XPTaskBar - 複数のボックスを格納できるメインコンテナーコントロール
  • XPTaskBarBox - ヘッダーと項目領域を備えた折りたたみ可能なセクション
  • XPTaskBarItem - ボックス内に表示される個々のコマンド項目
主な機能
  • 階層レイアウト - 項目をカテゴリ別のボックスに整理します
  • 折りたたみ/展開アニメーション - 設定可能なアニメーション速度で滑らかに遷移します
  • 複数のレイアウトモード - 縦向き(既定)または横向き
  • 状態の永続化 - セッションをまたいで展開/折りたたみ状態を保持します
  • 豊富なカスタマイズ - 色、フォント、画像、間隔を制御します
  • イベント駆動 - クリック、アニメーション、状態変更を処理します
  • 子コントロールのサポート - ボックス内にパネルやその他のコントロールを配置できます

クイックスタートの例

using Syncfusion.Windows.Forms.Tools;

// Create XPTaskBar control
XPTaskBar xpTaskBar1 = new XPTaskBar();
xpTaskBar1.Dock = DockStyle.Fill;
this.Controls.Add(xpTaskBar1);

// Create first task box
XPTaskBarBox box1 = new XPTaskBarBox();
box1.Text = "File Operations";
xpTaskBar1.Controls.Add(box1);

// Add items to the box
box1.Items.AddRange(new XPTaskBarItem[] {
    new XPTaskBarItem("New Document", System.Drawing.Color.Empty, -1, "NewDoc"),
    new XPTaskBarItem("Open File", System.Drawing.Color.Empty, -1, "OpenFile"),
    new XPTaskBarItem("Save", System.Drawing.Color.Empty, -1, "Save")
});

// Handle item clicks
box1.ItemClick += (sender, e) => {
    switch (e.XPTaskBarItem.Tag as string) {
        case "NewDoc":
            // Handle new document
            break;
        case "OpenFile":
            // Handle file open
            break;
    }
};

// Create second task box
XPTaskBarBox box2 = new XPTaskBarBox();
box2.Text = "Editing Tools";
xpTaskBar1.Controls.Add(box2);

box2.Items.AddRange(new XPTaskBarItem[] {
    new XPTaskBarItem("Cut", System.Drawing.Color.Empty, -1, "Cut"),
    new XPTaskBarItem("Copy", System.Drawing.Color.Empty, -1, "Copy"),
    new XPTaskBarItem("Paste", System.Drawing.Color.Empty, -1, "Paste")
});

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

実装のニーズに合った順序でリファレンスドキュメントを参照してください。

はじめに

📄 参照: references/getting-started.md

  • アセンブリとパッケージの依存関係
  • デザイナーまたはコードからコントロールを追加する方法
  • XPTaskBar、ボックス、項目の基本的な設定
  • 必要なアセンブリ参照
構造の構築

📄 参照: references/box-structure.md

  • XPTaskBar のボックス階層と構造
  • ヘッダーのカスタマイズ(テキスト、フォント、配置、方向)
  • 折りたたみ/展開ボタンの設定
  • 子パネルとコントロールの統合

📄 参照: references/items-and-content.md

  • XPTaskBarItems の作成と管理
  • Items コレクションの操作
  • 項目のプロパティと設定
  • PreferredChildPanelHeight を使った入れ子のコントロールの配置
レイアウトと方向

📄 参照: references/layout-orientation.md

  • 縦向きレイアウトモード(既定)
  • 横向きレイアウトモードと列幅
  • 方向の動的な切り替え
  • レスポンシブなレイアウト動作
動作とインタラクティブ性

📄 参照: references/behavior-and-events.md

  • アニメーションの設定とタイミング
  • 折りたたみ/展開イベントの処理
  • Tag に基づく振り分けを行う ItemClick イベント
  • 状態の保持(AutoPersistStates)
  • ドラッグ&ドロップのサポート
  • イベントの例とパターン
外観とカスタマイズ

📄 参照: references/appearance-customization.md

  • ヘッダーの色と前景色のカスタマイズ
  • ヘッダーのフォントスタイル
  • ProvideHeaderBackgroundBrush イベントと ProvideItemsBackgroundBrush イベントによるブラシのカスタマイズ
  • ヘッダーと項目への画像の追加
  • ツールチップの設定と表示
  • カスタム背景の描画方法
余白とスクロール

📄 参照: references/padding-spacing-scrolling.md

  • XPTaskBar 内部の余白(DockPadding、HorizontalPadding、VerticalPadding)
  • ボックスヘッダーの余白(PADX、PADY)
  • 自動スクロールの動作
  • スクロールマージンと最小サイズの設定

一般的なパターン

パターン 1:複数ボックスのタスクメニュー

折りたたみ可能な複数のタスクカテゴリを含むサイドバーを作成します。

var taskBar = new XPTaskBar { VerticalLayout = true };

// Create boxes for different task categories
foreach (var category in new[] { "File", "Edit", "View", "Help" }) {
    var box = new XPTaskBarBox { Text = category };
    taskBar.Controls.Add(box);
    // Add items to box
}
パターン 2:項目のクリックイベントの振り分け

Tag プロパティを使って、イベントの振り分けを実装します。

box.ItemClick += (sender, e) => {
    var command = e.XPTaskBarItem.Tag as string;
    ExecuteCommand(command);
};
パターン 3:状態の永続化

セッションをまたいでユーザー設定を保持します。

xpTaskBar1.AutoPersistStates = true;
パターン 4:状態変化のアニメーション

展開/折りたたみ時のアニメーションの動作を制御します。

box.AnimationDelay = 50;           // Milliseconds between frames
box.AnimationPositionsCount = 15;  // Number of animation steps
box.UseAdditionalAnimation = true; // Animate when adding/removing items

主な設定プロパティ

XPTaskBar レベル
プロパティ型目的
VerticalLayoutbool垂直モード(既定)では true、水平モードでは false に設定します
ColWidthOnHorizontalAlignmentint水平レイアウトモードでの列幅
HorizontalPaddingint内部の水平方向の間隔
VerticalPaddingint内部の垂直方向の間隔
AutoScrollbool必要に応じてスクロールバーを自動的に有効にします
AutoPersistStatesbool展開/折りたたみの状態をセッション間で保持します
AllowDropboolドラッグ&ドロップのサポートを有効にします
MinimumSizeSizeコントロールの最小サイズ
XPTaskBarBox レベル
プロパティ型目的
Textstringボックスヘッダーに表示するテキスト
Collapsedbooltrue に設定すると折りたたみ、false に設定すると展開します
ShowCollapseButtonbool折りたたみボタンを表示/非表示にします
ToggleByButtonboolボタンで状態を切り替えられるようにします
HeaderBackColorColorヘッダーの背景色
HeaderForeColorColorヘッダーのテキスト色
HeaderFontFontヘッダーのテキストフォント
HeaderTextAlignStringAlignmentヘッダーのテキスト配置
AnimationDelayintアニメーションフレーム間の遅延(ミリ秒)
AnimationPositionsCountintアニメーションのステップ数
PreferredChildPanelHeightint子コントロール用に確保する高さ
ShowToolTipbool項目のツールチップを有効にします
PADXintヘッダーの水平方向の余白
PADYintヘッダーの垂直方向の余白
XPTaskBarItem レベル
プロパティ型目的
Textstring項目に表示するテキスト
ImageIndexint親ボックスの ImageList 内のインデックス
ToolTipTextstring項目にポインターを合わせたときのツールチップテキスト
Tagobjectイベントの振り分けに使うカスタムデータ

次のステップ: references/getting-started.md から始めて、最初の XPTaskBar コントロールをセットアップします。

コメント