WPF DataGrid怎么合并相同的列
时间: 2023-05-19 10:02:23 浏览: 73
你可以使用 DataGrid 的 GroupStyle 属性来实现合并相同的列。首先,你需要在 XAML 中定义一个 GroupStyle,然后将它添加到 DataGrid 的 GroupStyle 属性中。在 GroupStyle 中,你可以使用一个 HeaderTemplate 来定义每个分组的标题,以及一个 ItemsPanel 来定义每个分组的内容。在 HeaderTemplate 中,你可以使用 Binding 来绑定分组的属性,以便显示分组的标题。在 ItemsPanel 中,你可以使用 DataGridRowsPresenter 来显示每个分组的内容。具体的实现方式可以参考以下代码示例:
```xml
<DataGrid ItemsSource="{Binding Data}">
<DataGrid.GroupStyle>
<GroupStyle>
<GroupStyle.HeaderTemplate>
<DataTemplate>
<TextBlock Text="{Binding Name}" />
</DataTemplate>
</GroupStyle.HeaderTemplate>
<GroupStyle.Panel>
<ItemsPanelTemplate>
<DataGridRowsPresenter />
</ItemsPanelTemplate>
</GroupStyle.Panel>
</GroupStyle>
</DataGrid.GroupStyle>
</DataGrid>
```
在上面的代码中,DataGrid 的 ItemsSource 绑定到一个名为 Data 的集合。GroupStyle 中定义了一个 HeaderTemplate,它使用 Binding 来绑定分组的 Name 属性。Panel 中使用 DataGridRowsPresenter 来显示每个分组的内容。这样,相同的列就会被合并在一起,而且每个分组都有自己的标题。