首页 > 解决方案 > 通过绑定设置列标题

问题描述

我有一个简单的类,我收集一些数据。第一个“行”包括作为字符串的标题(ID、名称等)。在我的 WPF 项目中,我有一个 DataGrid 和以下 XAML 代码:

    <DataGrid ItemsSource="{Binding Entries}" CanUserAddRows="False" Margin="12,12,0,0" AutoGenerateColumns="False">
        <DataGrid.Columns>
            <DataGridTextColumn Header="ID" Binding="{Binding uID}" />
            <DataGridTextColumn Header="First Name" Binding="{Binding uFName}" />
            <DataGridTextColumn Header="Second Name" Binding="{Binding uSName}" />
        </DataGrid.Columns>

    </DataGrid>

但我需要删除我的数据的第一行。是否可以使用我的数据集合的第一行作为列标题而不是通过修复 XAML?

标签: c#wpfdata-bindingdatagrid

解决方案


是否可以使用我的数据集合的第一行作为列标题而不是通过修复 XAML?

您可以使用以下方法执行此操作HeaderTemplate

<DataGridTextColumn Binding="{Binding uID}">
    <DataGridTextColumn.HeaderTemplate>
        <DataTemplate>
            <TextBlock Text="{Binding Items[0].uID, RelativeSource={RelativeSource AncestorType=DataGrid}}" />
        </DataTemplate>
    </DataGridTextColumn.HeaderTemplate>
</DataGridTextColumn>

推荐阅读