mcpField
S
syncfusion-winforms-spreadsheet-editor

syncfusion-winforms-spreadsheet-editor

github.com/syncfusion开发054 次安装6 天前更新
代码仓库

关于 syncfusion-winforms-spreadsheet-editor

此技能为使用 Syncfusion Windows Forms Spreadsheet 控件构建的交互式表格界面生成 C# 示例。它仅使用文档化的参考片段,并要求在任何文件操作前选择代码交付方式。

主要功能

  1. 01WinForms 表格控件代码生成
  2. 02工作簿、单元格及工作表操作
  3. 03公式、图表与数据验证示例
  4. 04使用参考片段生成代码
  5. 05文件操作前确认交付方式

适用场景

  1. 01创建包含数据和公式的表格示例
  2. 02设置下拉列表和数据验证
  3. 03添加图表或迷你图
  4. 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.md
references/
clipboard-operations.md
conditional-formatting.md
conversion.md
data-management.md
data-validation.md
editing.md
filtering-and-sorting.md
find-and-replace.md
formatting.md
formulas.md
freeze-panes.md
getting-started.md
hyperlinks.md
localization.md
merge-cells.md
outline.md
overview.md
protection.md
rows-columns-operations.md
selection.md
shapes.md
worksheet.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 — 分析用户请求
  1. 阅读用户的请求并提取功能关键词。
  2. 如果存在相关的 reference/*.md 文件,则仅将其用作生成代码的事实来源。
  3. 如果不存在匹配的 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 — 修改用户项目中的文件
  1. 询问: “要修改哪个文件?请提供完整文件路径(例如,D:\Project\Form1.cs)”
  2. 等待用户明确确认。
  3. 如果用户只回复“2”(选项编号)而未提供路径 → 再次询问。
  4. 不要猜测或推断文件路径。
  5. 确认后,应用请求的更改(覆盖或追加)。
选项 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.mdSetCellValue、命名范围(添加/编辑/删除)、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.mdFreezeRows、FreezeColumns、FreezePanes、UnfreezePanes、XlsIO SetFreezePanes/RemoveFreezePanes
localization.mdCurrentUICulture 设置、资源文件(.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

规则

  1. 仅使用参考片段

    • 生成的代码只能来自 references/ 下的 Markdown 文件
    • 不得虚构、猜测或包含 references/*.md 中未出现的属性、事件、API 方法、组件名称或参数
  2. 未经许可不得修改文件

  • 未经用户明确选择并确认,不得在用户工作区中创建或修改文件/文件夹。
  • 未经用户许可,不得创建 Spreadsheet 以外的按钮、表单、对话框、MessageBox 或任何 UI 元素。
  1. 不支持的功能处理

    • 如果用户请求的功能在 references/*.md 中没有对应片段,请回复: That feature is not currently supported by the Syncfusion Windows Forms Spreadsheet component.
    • 仅当有对应片段时,才建议最接近的受支持功能
    • 明确列出不支持的项目,且不得为这些项目生成代码
  2. 写入前验证

    • 写入前重新验证,确保所有代码块均来自 references/*.md 文件
    • 如果验证失败,请停止并告知用户

评论

支持 Markdown