feat(skills): add HandyControl WPF component skills
Build / build (push) Canceled after 0s

This commit is contained in:
chfei committed 2026-10-27 09:12:40 +08:00
1 parent 72d9b295a0
commit 5d81c475c8
335 files changed
+7359

No files matched your search

@@ -0,0 +1,30 @@
---
name: handycontrol-wpf-split-button
description: "实现、配置或排查 HandyControl WPF 的 SplitButton 分割按钮(SplitButton)。适用于该扩展控件的 XAML、绑定、事件和模板;不用于 Avalonia 或其他厂商控件。"
---
# HandyControl WPF SplitButton 分割按钮
实现或排查 **SplitButton 分割按钮**。相关类型:`SplitButton`。
## 接入
程序集/NuGet 为 `HandyControl`,XAML 命名空间为
`xmlns:hc="https://handyorg.github.io/handycontrol"`,C# 控件命名空间为 `HandyControl.Controls`。
在 `App.xaml` 合并 `pack://application:,,,/HandyControl;component/Themes/SkinDefault.xaml`,
然后合并 `pack://application:,,,/HandyControl;component/Themes/Theme.xaml`。
已有主题配置时先检查,避免重复合并。版本和目标框架以使用方项目为准。
## 实现
先读 [API 声明与继承关系](references/api.md),再按需求查看
[文档、样式与示例导航](references/usage.md)。源码路径相对于 HandyControl 仓库根目录;
在本仓库优先读本地文件,安装到其他项目后使用内附声明与链接,遇到版本差异检查实际引用版本的源码。
不要将 Demo 的 langs、ex:Lang、ViewModelLocator 或示例资源直接复制进使用方项目。
结合基类确认内容模型、绑定属性和事件参数;集合控件区分 ItemsSource、选中项与 ItemTemplate;修改样式前核对资源键和模板部件。
用目标项目现有的 MVVM 方式绑定;需要回写时明确 TwoWay 和更新时机,
不要假定所有依赖属性默认双向绑定。原生 WPF 与 HandyControl 同名类型使用命名空间区分。
交付时运行目标框架的构建,并在窗口加载后检查模板、绑定错误、空值和相关输入边界;
无法运行 WPF 时明确说明尚未验证 UI 行为。
@@ -0,0 +1,4 @@
interface:
display_name: "HandyControl WPF SplitButton 分割按钮"
short_description: "Implement HandyControl WPF controls from verified source guidance"
default_prompt: "Use $handycontrol-wpf-split-button to implement the requested HandyControl WPF UI."
@@ -0,0 +1,16 @@
# 源码 API 导航
下面是当前工作区的声明摘录,不是完整 C# 文件,不包含全部继承成员、访问器和条件编译条件。属性是否可写、依赖属性默认值、枚举成员和目标框架限制,需打开对应源码核对。
## SplitButton
源码:[src/Shared/HandyControl_Shared/Controls/Button/SplitButton.cs](https://github.com/HandyOrg/HandyControl/blob/master/src/Shared/HandyControl_Shared/Controls/Button/SplitButton.cs)
```text
public class SplitButton : ButtonBase
public HitMode HitMode
public double MaxDropDownHeight
public bool IsDropDownOpen
public object DropDownContent
public SplitButton()
```
@@ -0,0 +1,17 @@
# SplitButton 分割按钮 使用导航
文档:[doc/source/handycontrol/extend_controls/splitButton/index.md](https://github.com/HandyOrg/HandyControl/blob/master/doc/source/handycontrol/extend_controls/splitButton/index.md)
在线文档:[控件说明](https://handyorg.github.io/handycontrol/extend_controls/splitButton/)
按任务阅读原文中的章节:属性、案例。
## 当前源码
- [src/Shared/HandyControl_Shared/Controls/Button/SplitButton.cs](https://github.com/HandyOrg/HandyControl/blob/master/src/Shared/HandyControl_Shared/Controls/Button/SplitButton.cs)
## 样式及官方示例
- [src/Shared/HandyControl_Shared/Themes/Styles/SplitButton.xaml](https://github.com/HandyOrg/HandyControl/blob/master/src/Shared/HandyControl_Shared/Themes/Styles/SplitButton.xaml)
- [src/Shared/HandyControlDemo_Shared/UserControl/Controls/SplitButtonDemo.xaml](https://github.com/HandyOrg/HandyControl/blob/master/src/Shared/HandyControlDemo_Shared/UserControl/Controls/SplitButtonDemo.xaml)
- [src/Shared/HandyControlDemo_Shared/UserControl/Controls/SplitButtonDemo.xaml.cs](https://github.com/HandyOrg/HandyControl/blob/master/src/Shared/HandyControlDemo_Shared/UserControl/Controls/SplitButtonDemo.xaml.cs)