関連するDataSourceを使用してDataGridViewのカスタム列名を設定するにはどうすればよいですか?
ここにいくつかのコードがあります:
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;
これにより、列名が「Value」と「ExpirationDate」のdataGridViewが得られます。たとえば、名前を「Key」と「Expire」に変更するにはどうすればよいですか?
プロパティの DisplayName 属性を使用して、DataGridViewで列名を指定します。
class Key
{
[System.ComponentModel.DisplayName("Key")]
public string Value { get; }
[System.ComponentModel.DisplayName("Expire")]
public DateTime ExpirationDate { get; }
}
データソースを設定した後は、ヘッダーセルを変更できるはずです。
if (dataGridView1.Columns["Value"] != null)
dataGridView1.Columns["Value"].HeaderText = "Key";
if (dataGridView1.Columns["Expiration"] != null)
dataGridView1.Columns["Expiration"].HeaderText = "Expire";