重命名运行时生成的 devexpress 数据网格列的名称

Rename runtime-generated names of columns of a devexpress datagrid

我有一个 (Devexpress) Datagrid-Control,它包含 3 列信息。列的名称是自动生成的,每一行描述其中的一个对象:

    private string fName;
    private bool fCheck;
    private DateTime fDate;
    public bool checked
    {
        get { return this.fCheck; }
        set { this.fCheck = value; }
    }
    public string fileName
    {
        get { return this.fName; }
        set { this.fName = value; }
    }

    public DateTime createDate
    {
        get { return this.fDate; }
        set { this.fDate = value; }
    }

这些对象保存在列表<>(数据源)中:

gridFiles.DataSource = dataSource;
gridFiles.MainView.PopulateColumns();

现在,列的名称是 "checked"、"fileName" 和 "createDate"。我该如何更改?

使用 Gridview,我们可以在 Form_load() 事件中重命名列名...

gridView1.Columns["fileName"].Caption = "Your custom name";

Veeramani 的回答完美地完成了这项工作,但只是认为我应该分享一个代码更少的替代解决方案。您还可以通过在每个 属性 上添加 DisplayName 属性来实现此目的。即:

我的Class:

public class GridColumns
{
    private string fName;
    private bool fCheck;
    private DateTime fDate;

    [DisplayName("Checked Option")]
    public bool Checked
    {
        get { return fCheck; }
        set { this.fCheck = value; }
    }

    [DisplayName("File Name")]
    public string fileName
    {
        get { return this.fName; }
        set { this.fName = value; }
    }

    [DisplayName("Date Created")]
    public DateTime createDate
    {
        get { return this.fDate; }
        set { this.fDate = value; }
    }

}

然后使用它:

List<GridColumns> dataSourc = new List<GridColumns>();
dataGridView1.DataSource = dataSourc;