我正在導入一些Excel工作表到DataGridView。我需要導入,重新排序我的項目中的列,然後獲取新的索引。我試過DataGridViewColumn.Index,DataGridViewColumn.DisplayIndex,Refresh(),但索引從不改變。如何在DataGridView中重新排列列的機會列索引?
請問我該怎麼做?
謝謝。
我正在導入一些Excel工作表到DataGridView。我需要導入,重新排序我的項目中的列,然後獲取新的索引。我試過DataGridViewColumn.Index,DataGridViewColumn.DisplayIndex,Refresh(),但索引從不改變。如何在DataGridView中重新排列列的機會列索引?
請問我該怎麼做?
謝謝。
DataGridView列索引是在創建列時創建的。如果要更改GUI中的順序,如果要更改DataGridView的順序(如果要創建新的DataGridView或將該列放入臨時列表中),請更改DisplayIndex,刪除所有列並重新添加它們。
它有效,男人。謝謝。 –
如果要更改數據源中某個元素的實際索引,則需要更新數據源結構。但是如果您需要更改列的顯示位置,則可以是DisplayIndex屬性。這是更改列索引的示例:
var items = new List<dynamic>
{
new
{
Element1 = "Test Value",
Id = 1
},
new
{
Element1 = "Test Value",
Id = 1
}
};
dataGridView1.DataSource = items;
dataGridView1.Columns[1].DisplayIndex = 0;
MessageBox.Show(dataGridView1[0, 0].Value.ToString());
它的作品,男人。謝謝。 –
您是否無法在dataGridView中獲取新記錄?即不刷新dataGridView。 – user2960398
不,我不能添加或刪除dgv行,只對其重新排序。 –
添加或刪除事件不起作用? – user2960398