WPF MVVM DataGridColumnHeader DisplayName

Rob*_*gel 3 data-binding wpf datagrid mvvm datagridcolumn

我在MVVM中有一个DataGrid,其ItemsSource绑定到自定义模型.

此模型中的属性的名称与数据库中的等效项相同.例如:

public string StapelStatus_Txt
    {
        get
        {
            return this.stapelstatusTxt;
        }
        set
        {
            this.stapelstatusTxt = value;
            this.OnPropertyChanged("StapelStatus_Txt");
        }
    }
Run Code Online (Sandbox Code Playgroud)

是否有可能(没有重命名属性)为数据网格声明另一个显示名称?我认为数据anotation"DisplayName"会有所帮助......但它没有.

有人有个主意吗?:)

亲切的问候

Sti*_*ipo 9

例如,您可以在属性上使用DisplayNameAttribute并设置列标题,如下所示:

<DataGrid AutoGeneratingColumn="OnAutoGeneratingColumn"/>

private void OnAutoGeneratingColumn(object sender, DataGridAutoGeneratingColumnEventArgs e)
{
    e.Column.Header = ((PropertyDescriptor)e.PropertyDescriptor).DisplayName;
}
Run Code Online (Sandbox Code Playgroud)