我正在使用用户定义类型的 observableCollection 绑定网格。My Class 有一些属性,例如 FirstName、LastName、DateOfBirth 等。
当我绑定网格时。它显示相同的标题,即名字,但我希望它像名字一样。
我确信与类中属性的属性有关,但我不知道应该使用哪个属性。
我尝试过显示属性,但它不起作用。
任何信息都会有所帮助...
我正在使用用户定义类型的 observableCollection 绑定网格。My Class 有一些属性,例如 FirstName、LastName、DateOfBirth 等。
当我绑定网格时。它显示相同的标题,即名字,但我希望它像名字一样。
我确信与类中属性的属性有关,但我不知道应该使用哪个属性。
我尝试过显示属性,但它不起作用。
任何信息都会有所帮助...
不确定是否有办法在 xaml 中执行此操作,但您可以添加一个 EventHandler 并添加一些逻辑来更改 ColumnHeader 文本。
xml:
<DataGrid ItemsSource="{Binding ...}" AutoGeneratingColumn="DataGrid_AutoGeneratingColumn" />
代码:
private void DataGrid_AutoGeneratingColumn(object sender, DataGridAutoGeneratingColumnEventArgs e)
{
e.Column.Header = string.Concat(e.Column.Header.ToString().Select(x => char.IsUpper(x) ? " " + x : x.ToString())).TrimStart(' ');
}
这会将 Pascal 大小写转换为在大写字符之间有空格,例如:“FirstName”=“First Name”