DataGrid

使用 DataGrid 控件可以显示和编辑来自多个不同源(例如,来自 SQL 数据库、LING 查询或任何其他可绑定的数据源)的数据。 有关更多信息,请参见绑定源概述

列可以显示文本、控件(例如 ComboBox)或任何其他 WPF 内容(例如图像、按钮)或包含在模板中的任何内容。 您可以使用 DataGridTemplateColumn 显示模板中已定义的数据。 下表列出了默认情况下提供的列类型。

生成的列类型

数据类型

DataGridTextColumn

String

DataGridCheckBoxColumn

Boolean

DataGridComboBoxColumn

Enum

DataGridHyperlinkColumn

Uri

DataGrid 可对外观(例如单元格字体、颜色和大小)进行自定义。 DataGrid 支持其他 WPF 控件的所有样式和模板化功能。 DataGrid 还包括用于编辑、排序及验证的默认和可自定义的行为。

下表列出了针对 DataGrid 的一些常规任务以及完成这些任务的方法。 通过查看相关 API,您可以找到更多信息和代码示例。

方案

方法

交替的背景色

AlternationIndex 属性设置为 2 或更多,然后向 RowBackgroundAlternatingRowBackground 属性分配 Brush

定义单元格和行选择行为

设置 SelectionModeSelectionUnit 属性。

自定义标题、单元格和行的可视外观

将新的 Style 应用于 ColumnHeaderStyleRowHeaderStyleCellStyleRowStyle 属性。

设置调整大小选项

设置 HeightMaxHeightMinHeightWidthMaxWidthMinWidth 属性。 有关更多信息,请参见 DataGrid 控件中的调整大小选项

访问选定项

检查 SelectedCells 属性以获取选定单元格并检查 SelectedItems 属性以获取选定行。 有关更多信息,请参见 SelectedCells

自定义最终用户交互

设置 CanUserAddRowsCanUserDeleteRowsCanUserReorderColumnsCanUserResizeColumnsCanUserResizeRowsCanUserSortColumns 属性。

取消或更改自动生成的列

处理 AutoGeneratingColumn 事件。

冻结列

FrozenColumnCount 属性设置为 1,并通过将 DisplayIndex 属性设置为 0 将列移动到最左边的位置。

使用 XML 数据作为数据源

DataGrid 上的 ItemsSource 绑定到表示项集合的 XPath 查询。 在 DataGrid 中创建每个列。 通过将绑定上的 XPath 设置为获取项源上属性的查询来绑定每个列。 有关示例,请参见DataGridTextColumn

相关主题

标题

说明

演练:在 DataGrid 控件中显示 SQL Server 数据库中的数据

描述如何设置新的 WPF 项目、添加实体框架元素、设置源并在 DataGrid 中显示数据。

如何:向 DataGrid 控件中添加行详细信息

描述如何为 DataGrid 创建行详细信息。

如何:用 DataGrid 控件实现验证

描述如何验证 DataGrid 单元格和行中的值,并显示验证反馈。

DataGrid 控件中的默认键盘和鼠标行为

描述如何使用键盘和鼠标与 DataGrid 控件进行交互。

如何:在 DataGrid 控件中对数据进行分组、排序和筛选

描述如何通过对数据进行分组、排序和筛选,以不同方式在 DataGrid 中查看数据。

DataGrid 控件中的调整大小选项

描述如何在 DataGrid 中控制绝对大小调整和自动大小调整。

请参见

参考

DataGrid

概念

样式设置和模板化

数据绑定概述

数据模板化概述

控件

WPF 内容模型