Custom column names for DataGridView with associated DataSource

耗尽温柔 提交于 2019-11-27 01:48:02

问题


How can I setup custom column names for DataGridView with associated DataSource?

Here is some code:

class Key
{
    public string Value { get; }
    public DateTime ExpirationDate { get; }
}

List<Key> keys = new List<Key>();
...// fill keys collection

DataGridView dataGridView = createAndInitializeDataGridView();
dataGridView.DataSource = keys;

This gives me dataGridView with column names "Value" and "ExpirationDate". How should I proceed to change names to "Key" and "Expire" for example?


回答1:


Use the DisplayName attribute on your properties to specify column names in your DataGridView:

class Key
{
    [System.ComponentModel.DisplayName("Key")]
    public string Value { get; }
    [System.ComponentModel.DisplayName("Expire")]
    public DateTime ExpirationDate { get; }
} 



回答2:


You should be able to change the header cells after you've set the datasource:

    if (dataGridView1.Columns["Value"] != null)
        dataGridView1.Columns["Value"].HeaderText = "Key";
    if (dataGridView1.Columns["Expiration"] != null)
        dataGridView1.Columns["Expiration"].HeaderText = "Expire";


来源:https://stackoverflow.com/questions/6228199/custom-column-names-for-datagridview-with-associated-datasource

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!