DataGrid
通过 DataGrid 控件可显示和编辑来自许多不同源的数据,例如来自 SQL 数据库、LINQ 查询或任何其他可绑定数据源的数据。 有关详细信息,请参阅绑定源概述。
列可以显示文本、控件(例如 ComboBox)或任何其他 WPF 内容(例如图像、按钮或模板中包含的任何内容)。 可以使用 DataGridTemplateColumn 显示模板中定义的数据。 下表列出了默认提供的列类型。
生成的列类型 | 数据类型 |
---|---|
DataGridTextColumn | String |
DataGridCheckBoxColumn | Boolean |
DataGridComboBoxColumn | Enum |
DataGridHyperlinkColumn | Uri |
DataGrid 可以自定义外观,例如单元格字体、颜色和大小。 DataGrid 支持其他 WPF 控件的所有样式设置和模板功能。 DataGrid 还包括用于编辑、排序和验证的默认和可自定义行为。
下表列出了 DataGrid 的一些常见任务以及如何完成这些任务。 通过查看相关的 API,可以找到详细信息和示例代码。
方案 | 方法 |
---|---|
交替背景色 | 将 AlternationCount 属性设置为 2 或更多,然后将 Brush 分配给 RowBackground 和 AlternatingRowBackground 属性。 |
定义单元格和行选择行为 | 设置 SelectionMode 和 SelectionUnit 属性。 |
自定义标头、单元格和行的可视外观 | 将新的 Style 应用于 ColumnHeaderStyle、RowHeaderStyle、CellStyle 或 RowStyle 属性。 |
设置调整大小选项 | 设置 Height、MaxHeight、MinHeight、Width、MaxWidth 或 MinWidth 属性。 有关详细信息,请参阅 DataGrid 控件中的调整大小选项。 |
访问所选项 | 检查 SelectedCells 属性以获取选定的单元格,检查 SelectedItems 属性以获取选定的行。 有关详细信息,请参阅 SelectedCells。 |
自定义最终用户交互 | 设置 CanUserAddRows、CanUserDeleteRows、CanUserReorderColumns、CanUserResizeColumns、CanUserResizeRows 和 CanUserSortColumns 属性。 |
取消或更改自动生成的列 | 处理 AutoGeneratingColumn 事件。 |
冻结列 | 将 FrozenColumnCount 属性设置为 1,并通过将 DisplayIndex 属性设置为 0 将列移动到最左边的位置。 |
使用 XML 数据作为数据源 | 将 DataGrid 上的 ItemsSource 绑定到表示项集合的 XPath 查询。 在 DataGrid 中创建每一列。 通过将绑定上的 XPath 设置为获取项源属性的查询来绑定每一列。 有关示例,请参见 DataGridTextColumn。 |
相关主题
Title | 说明 |
---|---|
演练:在 DataGrid 控件中显示 SQL Server 数据库中的数据 | 介绍如何设置新的 WPF 项目、添加实体框架元素、设置源以及在 DataGrid 中显示数据。 |
如何:向 DataGrid 控件添加行详细信息 | 介绍如何为 DataGrid 创建行详细信息。 |
如何:使用 DataGrid 控件实现验证 | 介绍如何验证 DataGrid 单元格和行中的值,并显示验证反馈。 |
DataGrid 控件中的默认键盘和鼠标行为 | 介绍如何使用键盘和鼠标与 DataGrid 控件进行交互。 |
如何:在 DataGrid 控件中对数据进行分组、排序和筛选 | 介绍如何通过对数据进行分组、排序和筛选,以不同方式查看 DataGrid 中的数据。 |
DataGrid 控件中的重设大小选项 | 介绍如何在 DataGrid 中控制绝对和自动大小调整。 |
另请参阅
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈