sgcGrid 功能矩阵
按任务分类的 sgcGrid 全部功能,每项功能都链接到对应的帮助主题。同一个模型驱动 VCL、FireMonkey、WinForms、WPF 和 Avalonia 网格。
按任务分类的 sgcGrid 全部功能,每项功能都链接到对应的帮助主题。同一个模型驱动 VCL、FireMonkey、WinForms、WPF 和 Avalonia 网格。
3 项功能
15 项功能
4 项功能
12 项功能
5 项功能
2 项功能
8 个 NuGet 包
在线帮助与 PDF 手册
注册版 标记包含在注册版和试用版中、但不包含在免费社区版中的功能。~ 标记社区版仅部分提供的功能,差异说明见其下方。
每一行都链接到对应的帮助主题。社区版一列显示免费 .NET 社区版包含的内容;注册版和试用版包含全部功能。
列筛选器、筛选行、查找面板、列选择器、列移动、最佳列宽、布局、多选、带区、单元格类型、DataSet 编辑、粘贴、撤销和 sgcEditors 单元格编辑器,都位于适用于 Delphi 和 C++ Builder 的 VCL 与 FireMonkey 网格以及适用于 .NET 的 WinForms、WPF 和 Avalonia 网格中,社区版与注册版的划分相同,详见版本。在 .NET 中,DataSet 编辑写回 DataTable,AddLookup 添加查找列,SyncCursor 仅限 Delphi。
| 功能 | 详情 | 社区版 | 帮助 |
|---|---|---|---|
| 排序 | 按多列排序。 | 帮助 | |
| 筛选 | 筛选网格中显示的行。 | 帮助 | |
| 选择与键盘 | 用鼠标和键盘选择行或单元格。 | 帮助 | |
| 调整列宽 | 用户可用鼠标调整列宽。 | 帮助 | |
| 冻结列 | 在其余列滚动时,让前几列始终保持可见。 | 帮助 | |
| 条件格式 | 格式规则会在值满足条件时为单元格或整行着色,半透明颜色会在单元格背景上叠加色调。 | 帮助 | |
| 从右到左(阿拉伯语和希伯来语) | 列从右侧开始排列,冻结列位于右边缘;滚动条、树和分组缩进、展开箭头、表头图标、页脚和就地编辑器均已镜像。数字和日期仍保持从左到右。SaveToXLSX(注册版)会写出从右到左的工作表,也可通过 TsgcGridXLSXWriter.RightToLeft 实现。 | 帮助 | |
| 列筛选器 | 每个列标题中的漏斗(ShowFilterButtons)会打开一个弹出窗口,列出该列的不同值及其数量、一个搜索框,以及最多两个用 And 或 Or 连接的类型化条件。 | 帮助 | |
| 筛选行 | ShowFilterRow 会在标题下方添加一行,边输入边筛选每一列,每列的运算符在 FilterRowOperator 中设置。 | 帮助 | |
| 查找面板 | Ctrl+F 或 ShowFindPanel 会在每个单元格中高亮文本,F3 和 Shift+F3 在匹配项之间跳转,FindOnlyMatches 会隐藏其他行。 | 帮助 | |
| 列选择器和标题菜单 | 右键单击标题可排序、分组、调整宽度、筛选,并打开列选择器,这是一个每列带一个复选框的弹出窗口。ShowColumnChooser 可在代码中打开它。 | 帮助 | |
| 列重排 | 用户拖动标题即可移动该列,列仍留在冻结列的同一侧及其所在带区内;OnColumnMoved 会报告这次移动。 | 帮助 | |
| 最佳列宽 | 双击标题边缘,或使用 BestFitColumn 和 BestFitColumns,会让宽度适应标题和最多 1,000 个采样行。 | 帮助 | |
| 布局持久化 | SaveLayoutToString、SaveLayoutToStream 和 SaveLayoutToFile 会把列顺序、宽度、可见性、排序、分组、列筛选器和带区保存为带版本的 JSON,Load 方法则将其还原。 | 帮助 | |
| 多选 | gsmMultiRow 可选择任意一组行,gsmCellRange 可选择一个单元格区域,支持 Ctrl、Shift 和 Ctrl+A。选择按行键保存,Ctrl+C 会把它复制为制表符分隔的文本。 | 帮助 |
| 功能 | 详情 | 社区版 | 帮助 |
|---|---|---|---|
| 就地编辑 | 就地编辑单元格,并提供验证事件。 | 注册版 | 帮助 |
| DataSet 绑定 | TsgcGridSource_DataSet 可用任意 TDataSet 填充网格,通过 AutoColumns 创建列,并在启用 LiveUpdates 后跟随每一次 Append、Edit 和 Delete。在 .NET 中,同一数据源可读取 DataTable。 | 帮助 | |
| ItemsSource 与 MVVM 绑定 (.NET) | TsgcWpfGrid 和 TsgcAvaloniaGrid 显示 ItemsSource(任意 IEnumerable)中的项目,并支持 AutoGenerateColumns、KeyMember 和双向的 SelectedItem。在 WPF 中,ICollectionView 的排序、筛选和分组都会生效,IsSynchronizedWithCurrentItem 会跟随它的当前项。TsgcWinFormsGrid 像 DataGridView 一样绑定 DataSource 和 DataMember。启用 ItemsWriteBack 后,编辑、插入和删除会写回到各个项目。 | ~社区版显示并跟随所绑定的项目。ItemsWriteBack 为注册版功能。 | 帮助 |
| XAML 与设计器中的列 (.NET) | 网格内的 TsgcWpfGridColumn 和 TsgcAvaloniaGridColumn 元素用 FieldName(支持点分路径,如 Customer.Country)、Caption、DataType 和 DisplayFormat 声明列。在 WinForms 中,.NET Framework 以及 .NET 8 或更高版本上的 Visual Studio 设计器通过智能标记和集合编辑器编辑 Columns,空网格会在设计器以及 WPF 和 Avalonia 预览器中显示示例行。 | 帮助 | |
| JSON 和 CSV | 以 JSON 和 CSV 加载和保存行。 | 帮助 | |
| Excel 导出 | 将网格保存为 Excel 工作簿 (XLSX)。 | 注册版 | 帮助 |
| DataSet 编辑 | 启用 WriteBack 后,TsgcGridSource_DataSet 会把网格中的修改提交到各自的记录,SyncCursor 让当前记录和活动行保持一致,AllowInsert 和 AllowDelete 用于添加和删除记录。查找字段会作为选择列表进行编辑。 | 注册版 | 帮助 |
| 从剪贴板粘贴 | Ctrl+V 会把从 Excel 复制的制表符分隔文本粘贴到一个单元格区域。每个值在写入任何内容之前都会先转换并验证,整个粘贴只算一个撤销步骤。 | 注册版 | 帮助 |
| 撤销和重做 | Ctrl+Z 和 Ctrl+Y 按行键撤销和重做单元格修改与粘贴,最多 UndoLimit 步。 | 注册版 | 帮助 |
| 单元格编辑器 | EditorKind 可选择日期、时间或日期时间选择器、带箭头的数字框、颜色选择器,或来自 sgcEditors 的令牌编辑器,OnCreateEditor 则可把你选择的任意控件放进单元格。 | 注册版 | 帮助 |
| 打印和打印预览 | Print 和 ShowPrintPreview 可以按网格显示的样子打印所有行(已应用筛选、排序和分组),在每一页重复带区和列标题,每页只放完整的行。PrintSettings 一次性设置纸张、方向、页边距、缩放、页眉和页脚,打印机、预览和 PDF 共用这些设置。所有版本均可使用,支持 VCL、FireMonkey、WinForms、WPF 和 Avalonia(FireMonkey 的打印在 Windows 和 macOS 上可用)。 | 帮助 | |
| 无障碍 PDF 导出,PDF/UA 和 PDF/A(配合 sgcPDF) | ExportToPDF 写出带嵌入字体和可搜索文本的矢量页面,每一页都是带标题单元格的真正表格,屏幕阅读器可以朗读。文件默认是带标签的 PDF/UA 文档,PDFALevel 可再加上 PDF/A-2a 或 PDF/A-3a。需要 sgcUIPDF 桥接和已获许可的 sgcPDF(在 .NET 中为 esegece.sgcUICore.sgcPDF)。 | 注册版 | 帮助 |
| 功能 | 详情 | 社区版 | 帮助 |
|---|---|---|---|
| 主题 | 与每款 sgcUI 产品共享的浅色和深色主题。 | 帮助 | |
| 无界面渲染 | SaveToPNG 和 SaveToSVG 写出当前视图,TsgcGridRenderer 可将独立的 TsgcGridData 绘制为 PNG 或 SVG,在 Linux64 上同样可用。 | 帮助 | |
| 来自网格的图表 | sgcCharts 图表可直接绘制网格的行。 | 帮助 | |
| 带区 | 列组上方的标题,层级数量不限:Bands 保存这些标题,Column.Band 把一列放到其中一个带区之下。 | 帮助 | |
| 单元格类型 | CellKind 会把单元格绘制成来自图像列表的图像、进度条,或折线、面积或柱状迷你图,而单元格仍保留其原始值。 | 帮助 | |
| 无障碍 | 作为带有列标题、行和单元格的表格向 UI Automation 公开,包括焦点单元格、选择、排序、筛选、分组和树形行,Narrator 和 NVDA 等屏幕阅读器使用的正是这一 API。筛选、分组和移动列都有键盘替代方式(调整列宽需要鼠标),焦点环始终可见,并遵循 Windows 高对比度。默认开启,可用于 VCL(Delphi 7 到 13)、Windows 上的 FireMonkey、WinForms、WPF 和 Avalonia。 | 帮助 |
| 功能 | 详情 | 社区版 | 帮助 |
|---|---|---|---|
| 向网格提问 | TsgcGridAI 会把自然语言问题转换为筛选、排序和行高亮。未设置提供程序时,本地规则解析器会作答,无需网络,也无需 API 密钥。设置提供程序后,由任意 LLM 作答;当调用失败或答案未通过验证时,由规则解析器接手。 | 帮助 | |
| AI 查询栏(VCL 和 FireMonkey) | TsgcVCLAIQueryBar 和 TsgcFMXAIQueryBar,FireMonkey 适用于 Windows、macOS、iOS 和 Android:输入问题,按 Enter,查看已应用的内容,可取消正在进行的提问,也可撤销上一个答案,并带有最近的问题和建议。支持键盘、屏幕阅读器、高对比度和从右到左的布局。 | 帮助 | |
| AI 查询栏(WinForms、WPF 和 Avalonia) | TsgcWinFormsAIQueryBar、TsgcWpfAIQueryBar 和 TsgcAvaloniaAIQueryBar 在 .NET 中提供相同的功能,并跟随宿主的浅色或深色主题。 | 帮助 | |
| 任意 LLM | TsgcUIAIEventProvider 会在其 OnRequest 事件中把每个请求交给你自己的代码,因此任何 AI 服务、模型或本地部署的服务器都可以作答。在 .NET 中,RequestAsync 接受异步处理程序。 | 帮助 | |
| sgcWebSockets AI 提供程序 | sgcUICoreWS 桥接的 TsgcUIAIChatProvider 在所有平台上使用 sgcWebSockets 的 TsgcAIChat 组件。在 .NET 中使用 esegece.sgcUICore.sgcWebSockets 包。需要已注册的 sgcWebSockets。 | 注册版 | 帮助 |
| 隐私 | 只发送问题和字段目录:名称、标题、类型,以及每列默认最多 3 个示例值(MaxSampleValues、SendSampleValues),绝不发送行数据。OnBeforeAsk 可以修改或取消每个请求。 | 帮助 |
| 功能 | sgcGrid | Delphi 自带控件 |
|---|---|---|
| 从工作线程按键更新行,无需 Synchronize | — | |
| 变化的单元格闪烁并渐隐 | — | |
| 针对单元格或整行的格式规则 | — | |
| 带分组面板、分组和页脚汇总的分组 | — | |
| 树形行和主从明细带 | — | |
| 带分级显示和公式的 Excel 工作簿导出 | — | |
| 无界面 PNG 和 SVG 渲染,也支持 Linux64 | — | |
| Excel 风格的列筛选弹出窗口、筛选行和查找面板 | — | |
| 列选择器、标题菜单和保存为 JSON 的布局 | — | |
| 列组上方的带区标题 | — | |
| 无需自定义绘制代码的进度条、迷你图和图像单元格 | — | |
| 从 Excel 粘贴单元格区域,并支持撤销和重做 | — |
仅列出帮助文档中记载的功能,不含性能声明。
.NET 网格是类名相同的 C# 移植版本,适用于 WinForms、WPF 和 Avalonia。可先使用免费的社区包,再升级到注册版包以获得全部功能。
| 包 | 版本 | 内容 |
|---|---|---|
esegece.sgcGrid.Community | 社区版(免费) | 核心库 |
esegece.sgcGrid | 注册版 | 核心库 |
esegece.sgcGrid.WinForms | 注册版 | Windows Forms 控件 |
esegece.sgcGrid.Wpf | 注册版 | WPF 控件 |
esegece.sgcGrid.Avalonia | 注册版 | Avalonia 控件 |
esegece.sgcGrid.Rendering | 注册版 | 无界面渲染 |
esegece.sgcGrid.sgcWebSockets | 仅限注册版 | sgcWebSockets 桥接 |
esegece.sgcUICore.sgcWebSockets | 仅限注册版 | sgcWebSockets AI 提供程序(TsgcUIAIChatProvider) |
esegece.sgcGrid.sgcHTML | 仅限注册版 | sgcHTML 桥接 |
sgcGrid 的每项功能都记录在 sgcUI 帮助中,每种开发环境各有一个版本。