关于 syncfusion-winforms-spreadsheet-editor
此技能为使用 Syncfusion Windows Forms Spreadsheet 控件构建的交互式表格界面生成 C# 示例。它仅使用文档化的参考片段,并要求在任何文件操作前选择代码交付方式。
主要功能
- 01WinForms 表格控件代码生成
- 02工作簿、单元格及工作表操作
- 03公式、图表与数据验证示例
- 04使用参考片段生成代码
- 05文件操作前确认交付方式
适用场景
- 01创建包含数据和公式的表格示例
- 02设置下拉列表和数据验证
- 03添加图表或迷你图
- 04配置工作表保护和单元格锁定
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ syncfusion/ spreadsheet-editor-sdk-skills --skill syncfusion-winforms-spreadsheet-editor安装后在 Claude Code 中输入/syncfusion-winforms-spreadsheet-editor确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
README.mdreferences/clipboard-operations.mdconditional-formatting.mdconversion.mddata-management.mddata-validation.mdediting.mdfiltering-and-sorting.mdfind-and-replace.mdformatting.mdformulas.mdfreeze-panes.mdgetting-started.mdhyperlinks.mdlocalization.mdmerge-cells.mdoutline.mdoverview.mdprotection.mdrows-columns-operations.mdselection.mdshapes.mdworksheet.md详细介绍
Syncfusion Windows Forms Spreadsheet 编辑器
概述
使用 Syncfusion Spreadsheet 控件在 Windows Forms 中创建类似 Excel 的查看器/编辑器 UI。此技能可生成用于实现交互式电子表格功能的 C# Windows Forms 代码。
主要功能
- 创建和编辑: 工作簿(.xlsx、.xls、.xlsm)、工作表、单元格编辑、格式设置、样式
- 高级功能: 400 多种公式、命名区域、数据验证、下拉列表、单元格锁定、工作表保护
- UI 组件: SpreadsheetRibbon(File、Home、Insert、Formulas 选项卡)、交互式编辑
- 可视元素: 图表(Column、Line、Pie、Bar、Area、Scatter 等)、迷你图(Line、Column、Win/Loss)
- 导航: 超链接(Web URL、电子邮件、文件、工作簿导航)
快速入门示例
示例 1
用户:“请展示如何创建包含数据和公式的电子表格”
**结果:**生成用于创建工作簿、设置单元格值和添加公式的 C# 代码
示例 2
用户:“在电子表格控件中添加数据验证和规则”
**结果:**生成用于电子表格控件验证和自定义规则的 C# 代码
为用户的项目生成 C# 代码 (默认)
触发关键词:“如何”“添加电子表格”“代码示例”“展示给我”“示例”“代码片段”“集成”“组件”“创建示例”“代码”“示例代码”“生成代码”“实现”“添加到项目”“配置电子表格”
步骤 1 — 分析用户请求
- 阅读用户的请求并提取功能关键词。
- 如果存在相关的 reference/*.md 文件,则仅将其用作生成代码的事实来源。
- 如果不存在匹配的 reference 文件,则使用 references/getting-started.md 中的示例生成代码。
步骤 2 — 同意与目标位置确认(执行任何文件操作前必须询问)
在生成或写入任何内容之前,询问用户:
I'm ready to generate your Syncfusion Windows Forms Spreadsheet sample.
Where should I place it?
1) Create a new Form file in the skill's "output" folder (recommended for quick tryout)
2) Add or modify an existing file in your project (please provide the full file path; choose append or replace)
3) Say "Just show me the code" to get the snippet here without modifying any files.
规则
- 在用户选择一个选项或表示“只展示代码”之前,不要继续。
- 如果用户拒绝修改文件:
- 仅在聊天中展示 C# 代码
- 不创建或更改文件
- **仅适用于选项 2:**生成代码前,检查项目是否具备
references/getting-started.md中列出的先决条件(“Prerequisites and Setup Requirements”部分)。如果缺少,则征求用户同意并添加。
步骤 3 — 生成代码(严格遵循仅参考资料规则)
- 始终以 getting-started.md 中“Minimal code”部分的示例代码结构为基础模板来创建电子表格。
- 严格按照 references/*.md 中的示例使用 API(例如 getting-started.md、formulas.md)。
- 不要臆造 API 或猜测行为。
- 如果任何参考文件都未记录该功能,请告知用户此功能不可用。
步骤 4 — 应用更改(仅在获得同意后)
选项 A — 在技能文件夹中创建新文件
- 在技能根目录中创建名为
output/的文件夹(如果该文件夹尚不存在)。 - 默认文件名:
SpreadsheetSample.cs - 如果文件已存在,请询问: “名为 ‘SpreadsheetSample.cs’ 的文件已存在。要覆盖、追加,还是使用其他名称?”
- 等待用户决定后再写入任何内容。
- 写入生成的 C# 内容。
选项 B — 修改用户项目中的文件
- 询问: “要修改哪个文件?请提供完整文件路径(例如,D:\Project\Form1.cs)”
- 等待用户明确确认。
- 如果用户只回复“2”(选项编号)而未提供路径 → 再次询问。
- 不要猜测或推断文件路径。
- 确认后,应用请求的更改(覆盖或追加)。
选项 C — 仅展示代码
- 在聊天中展示生成的 C# 代码。
- 不要创建或修改任何文件。
超出范围的请求
当用户提出的问题与技能领域不匹配(即与 Windows Forms 电子表格、Excel 处理或 Syncfusion 电子表格控件无关)时,请回复:
“无法处理此输入。请换一种方式提供输入。”
请勿尝试:
- 生成电子表格/Excel 领域之外的代码
- 提供与电子表格功能无关的通用 Windows Forms 指导
- 处理针对其他 Syncfusion 控件或无关框架的请求
- 协助处理非电子表格功能
仅当用户的请求符合触发关键词时,才激活此技能及其工作流:“spreadsheet”、“Excel”、“form”、“UI”、“code”、“Ribbon”、“WinForms”(需在电子表格/Excel 语境下)。
代码参考(位于 references/ 文件夹中)
所有模板和功能代码片段都位于 references/*.md 中。每个文件都包含一个专用代码片段,Agent 会在生成示例时组合使用这些片段。
流程:始终从 references/getting-started.md 开始(Prerequisites and Setup Requirements 部分),然后合并匹配的功能代码片段。如果没有匹配的功能关键词,则仅返回基本示例。
| 文件 | 内容 |
|---|---|
| getting-started.md | 设置、程序集(必需/可选)、实例化 Spreadsheet/SpreadsheetRibbon、创建/打开/保存工作簿、显示图表/迷你图、注册渲染器 |
| formulas.md | SetCellValue、命名范围(添加/编辑/删除)、409 个公式函数(数据库、日期/时间、工程、财务、信息、逻辑、查找、数学、统计、文本、Web) |
| editing.md | 启用/禁用编辑、BeginEdit/EndEdit/ValidateAndEndEdit、单元格锁定(Locked 属性)、属性、方法、事件(CurrentCellBeginEdit、CurrentCellValueChanged 等) |
| data-management.md | 从 DataTable/DataView/Business Objects/Arrays 导入、导出到 DataTable(ImportDataTable、ExportDataTable、ExcelExportDataTableOptions)、刷新显示(InvalidateCells) |
| data-validation.md | 数字/日期/时间/文本长度验证、列表验证(下拉列表)、自定义公式验证、IDataValidation 接口、比较运算符、错误消息 |
| hyperlinks.md | 创建超链接(URL、电子邮件、文件、工作簿单元格引用)、添加/编辑/移除、ExcelHyperLinkType 枚举、IHyperLink 接口属性 |
| clipboard-operations.md | 剪切/复制/粘贴、选择性粘贴(ExcelPasteType、ExcelPasteOptions)、填充序列(向下/向右/向上/向左) |
| conditional-formatting.md | 突出显示单元格规则(值、公式、文本、时间段)、数据条、色阶、图标集、IConditionalFormat 接口 |
| conversion.md | 转换为图像(Bitmap/Metafile)、PDF(ExcelToPdfConverter、设置)、HTML(SaveAsHtml)、必需程序集 |
| formatting.md | 单元格背景、字体、边框、对齐方式(水平/垂直/方向/缩进)、自动换行、数字格式、内置样式、套用表格格式、清除格式 |
| freeze-panes.md | FreezeRows、FreezeColumns、FreezePanes、UnfreezePanes、XlsIO SetFreezePanes/RemoveFreezePanes |
| localization.md | CurrentUICulture 设置、资源文件(.resx)、特定区域性本地化、修改默认字符串 |
| merge-cells.md | 合并/取消合并单元格、CoveredCellInfo、IRange.Merge/UnMerge 方法、InvalidateCell |
| overview.md | 功能概览(功能区、编辑、公式、数据验证、条件格式、图表、迷你图、保护、转换、支持的文件类型) |
| outline.md | 分组/取消分组行和列、折叠/展开分组、大纲设置(汇总行/列位置)、清除大纲、OutlineLocation 枚举 |
| protection.md | 工作表保护(Protect/Unprotect、ExcelSheetProtection 选项)、工作簿保护、锁定/解锁单元格、检查保护状态 |
| rows-columns-operations.md | 插入/删除行和列、设置行高/列宽、隐藏/显示行和列、调整行/列尺寸 |
| worksheet.md | 添加/移除/重命名工作表、在工作表之间导航、访问工作表、移动/复制工作表、显示/隐藏工作表、显示/隐藏工作表标签、工作表事件 |
| filtering-and-sorting.md | 启用/禁用自动筛选、筛选数据(数字、文本、日期、自定义)、排序数据(升序/降序、自定义排序)、清除筛选/排序 |
| find-and-replace.md | 查找单元格(FindAll、FindNext)、替换功能、查找选项(区分大小写、全字匹配)、按条件搜索、浏览结果 |
| selection.md | 选择范围(单个单元格、多个单元格、整行/整列)、获取活动单元格、选择命名范围、选择更改事件、清除选择 |
| shapes.md | 导入图表、迷你图、图片、文本框,添加/调整大小/重新定位形状,访问选定的形状,选择/清除形状选择,GraphicChartCellRenderer、SparklineCellRenderer |
规则
-
仅使用参考片段
- 生成的代码只能来自
references/下的 Markdown 文件 - 不得虚构、猜测或包含
references/*.md中未出现的属性、事件、API 方法、组件名称或参数
- 生成的代码只能来自
-
未经许可不得修改文件
- 未经用户明确选择并确认,不得在用户工作区中创建或修改文件/文件夹。
- 未经用户许可,不得创建 Spreadsheet 以外的按钮、表单、对话框、MessageBox 或任何 UI 元素。
-
不支持的功能处理
- 如果用户请求的功能在
references/*.md中没有对应片段,请回复:That feature is not currently supported by the Syncfusion Windows Forms Spreadsheet component. - 仅当有对应片段时,才建议最接近的受支持功能
- 明确列出不支持的项目,且不得为这些项目生成代码
- 如果用户请求的功能在
-
写入前验证
- 写入前重新验证,确保所有代码块均来自
references/*.md文件 - 如果验证失败,请停止并告知用户
- 写入前重新验证,确保所有代码块均来自