关于 syncfusion-wpf-taskbar
用于实现 Syncfusion WPF TaskBar 控件的技能,面向需要在操作面板、工具面板或侧栏中组织可折叠内容组的开发者。
主要功能
- 01可折叠的 TaskBarItem 分组
- 02分组内可放置任意 WPF 内容
- 03水平或垂直排列分组
- 04可配置间距与尺寸
- 05展开和折叠控制
- 06应用内置视觉样式
适用场景
- 01创建分组操作面板
- 02构建可折叠侧栏
- 03按类别组织工具区块
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ syncfusion/ wpf-ui-components-skills --skill syncfusion-wpf-taskbar安装后在 Claude Code 中输入/syncfusion-wpf-taskbar确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/appearance.mdgetting-started.mditems-and-content.mdlayout-and-orientation.md详细介绍
实现 WPF TaskBar
TaskBar 控件提供 Windows Explorer 风格的任务面板 UI — 可折叠的分组区段(TaskBarItem),可容纳任意 WPF 内容。适用于操作面板、属性组、导航侧边栏和工具面板。
所需程序集:
Syncfusion.Tools.WPFSyncfusion.Shared.WPF
XAML 命名空间:
xmlns:syncfusion="http://schemas.syncfusion.com/wpf"
C# 命名空间:
using Syncfusion.Windows.Tools.Controls;
何时使用此技能
| 场景 | 使用 TaskBar |
|---|---|
| Windows Explorer 风格的分组操作面板 | ✅ 是 |
| 包含分组项的可折叠侧边栏 | ✅ 是 |
| 带分类区段的 WPF 工具面板 | ✅ 是 |
| 简单的选项卡控件 | ❌ 使用 TabControl |
| 支持逐级导航的侧边栏 | ❌ 使用 GroupBar 或 SfTreeNavigator |
文档与导航指南
入门
📄 阅读: references/getting-started.md
- 程序集和 NuGet 设置
- 通过 XAML 和 C# 添加 TaskBar
- 添加带标题的 TaskBarItem
- 向 TaskBarItem 添加内容(文本、面板)
项目与内容
📄 阅读: references/items-and-content.md
- TaskBarItem Items 集合(任意 UIElement)
- 自定义标题(使用 DockPanel + Image + TextBlock)
- 使用
IsOpened附加属性折叠/展开 - 动画速度(
Speed附加属性) - 展开器按钮大小(
ButtonSize附加属性)
布局与方向
📄 阅读: references/layout-and-orientation.md
GroupOrientation:水平或垂直GroupOrientationChanged事件GroupMargin:项目之间的间距GroupPadding:内容的内部内边距GroupWidth:统一的项目宽度FlowDirection:从左到右 / 从右到左
外观与视觉样式
📄 阅读: references/appearance.md
SkinStorage.SetVisualStyle()— 应用内置视觉样式- 所有可用的样式名称(Office2007、Blend、Metro、VS2010 等)
快速入门示例
包含两个分组的最简 TaskBar(XAML):
<Window x:Class="MyApp.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:syncfusion="http://schemas.syncfusion.com/wpf"
Title="MainWindow" Height="450" Width="300">
<Grid>
<syncfusion:TaskBar Name="taskBar" GroupMargin="5">
<syncfusion:TaskBarItem Header="File Tasks">
<StackPanel Margin="10">
<TextBlock Text="Open a file" />
<TextBlock Text="Save the file" />
</StackPanel>
</syncfusion:TaskBarItem>
<syncfusion:TaskBarItem Header="Edit Tasks">
<StackPanel Margin="10">
<TextBlock Text="Copy" />
<TextBlock Text="Paste" />
</StackPanel>
</syncfusion:TaskBarItem>
</syncfusion:TaskBar>
</Grid>
</Window>
等效的 C# 代码:
TaskBar taskBar = new TaskBar();
taskBar.GroupMargin = new Thickness(5);
TaskBarItem item1 = new TaskBarItem() { Header = "File Tasks" };
item1.Items.Add(new TextBlock() { Text = "Open a file" });
taskBar.Items.Add(item1);
TaskBarItem item2 = new TaskBarItem() { Header = "Edit Tasks" };
item2.Items.Add(new TextBlock() { Text = "Copy" });
taskBar.Items.Add(item2);
this.Content = taskBar;
常见模式
加载时折叠所有分组
<syncfusion:TaskBar Name="taskBar" syncfusion:TaskBar.IsOpened="False">
<syncfusion:TaskBarItem Header="Tasks" />
</syncfusion:TaskBar>
水平布局(分组并排显示)
<syncfusion:TaskBar GroupOrientation="Horizontal" GroupMargin="5">
...
</syncfusion:TaskBar>
带图标的自定义标题
<syncfusion:TaskBarItem>
<syncfusion:TaskBarItem.Header>
<DockPanel>
<Image Height="16" Width="16" Source="icon.png" />
<TextBlock Foreground="White" Margin="5,0,0,0" Text="My Group" />
</DockPanel>
</syncfusion:TaskBarItem.Header>
...
</syncfusion:TaskBarItem>
应用视觉样式
SkinStorage.SetVisualStyle(taskBar, "Office2007Blue");
关键属性
| 属性 | 所属对象 | 类型 | 说明 |
|---|---|---|---|
Header | TaskBarItem | object | 分组标题标签(支持模板) |
Items | TaskBarItem | collection | 分组中的内容项 |
GroupMargin | TaskBar | Thickness | 所有 TaskBarItem 之间的边距 |
GroupWidth | TaskBar | double | 所有 TaskBarItem 的统一宽度 |
GroupOrientation | TaskBar | Orientation | Vertical(默认)或 Horizontal |
FlowDirection | TaskBar | FlowDirection | LeftToRight 或 RightToLeft |
IsOpened | 在 TaskBar 上附加 | bool | 展开(true)或折叠(false)所有项目 |
TaskBar.Speed | 附加属性 | double | 展开/折叠动画速度 |
TaskBar.ButtonSize | 附加属性 | double | 展开器按钮的高度 |
TaskBar.GroupPadding | 附加属性 | Thickness | 每个 TaskBarItem 内部的内边距 |
评论
支持 Markdown