WPF (数据控件1)DataGrid控件的详细使用教程

2025-10-03 12:37:12   竞技场直播

WPF 中的 DataGrid 控件是一个非常强大的数据展示控件,可以用来显示、编辑和排序数据。它可以绑定到数据源,自动生成列,支持各种交互功能,如排序、分组、分页、编辑、选择等。

基本功能和使用

1. 定义基本的 DataGrid

要在 WPF 中使用 DataGrid,可以在 XAML 中定义它并绑定到一个数据源。以下是一个简单的 DataGrid 示例:

在这个例子中,AutoGenerateColumns="True" 表示 DataGrid 会自动根据绑定的数据源的属性生成列。

2. 绑定数据源

你可以通过 XAML 或代码将 DataGrid 绑定到数据源。以下是通过代码绑定的示例:

public partial class MainWindow : Window

{

public MainWindow()

{

InitializeComponent();

List people = new List()

{

new Person() { Name = "John", Age = 30 },

new Person() { Name = "Jane", Age = 25 },

new Person() { Name = "Doe", Age = 35 }

};

myDataGrid.ItemsSource = people;

}

}

public class Person

{

public string Name { get; set; }

public int Age { get; set; }

}

此示例中,myDataGrid.ItemsSource 被设置为一个 List 数据源,DataGrid 会根据 Person 类的属性自动生成列。

手动定义列

有时候你可能希望手动定义列,而不是让 DataGrid 自动生成列。你可以通过 DataGrid.Columns 来指定每个列的显示方式。以下是一个手动定义列的示例:

在这个例子中,AutoGenerateColumns 设置为 False,表示手动定义列。通过 DataGridTextColumn 手动指定了 Name 和 Age 两个列,并通过 Binding 将它们绑定到数据源的对应属性。

DataGrid 列类型

WPF DataGrid 支持不同类型的列,你可以根据需要选择不同的列类型:

DataGridTextColumn:显示文本,最常用的一种列。

DataGridCheckBoxColumn:显示复选框,用于表示布尔值。

DataGridComboBoxColumn:显示下拉框,用于选择不同的选项。

DataGridTemplateColumn:通过 DataTemplate 自定义列内容。