0
我有以下代码:我怎样才能填补datagridview的更快C#
private void copyCloneRowFromdgvCustomMainTodgvCustomSingleExtraction(int[] vect)
{
dgvCustomSingleExtraction.Rows.Clear();
DataGridViewRow row = new DataGridViewRow();
int i = 0;
dgvCustomSingleExtraction.ColumnCount = dgvCustomMain.ColumnCount;
for (; i < dgvCustomMain.ColumnCount; i++)
dgvCustomSingleExtraction.Columns[i].HeaderCell.Value = dgvCustomMain.Columns[i].HeaderCell.Value;
for (i = 0; i < vect.Length; i++)
{
int intColIndex = 0;
row = (DataGridViewRow)dgvCustomMain.Rows[vect[i]].Clone();
foreach (DataGridViewCell cell in dgvCustomMain.Rows[vect[i]].Cells)
{
row.Cells[intColIndex].Value = cell.Value;
intColIndex++;
}
dgvCustomSingleExtraction.Rows.Add(row);
}
}
用这种方法我想创建一个新的DataGridView
与处于dgvCustomMain
随机行。所以我用int[] vect
它是一个随机数组(从0
到dgvCustomMain.Count - 1
)。现在,如果数组较小,例如1500个元素,则需要188ms
,如果数组较大(例如15000个元素),则需要大约1800毫秒,如果它比150000个元素更大,则需要大约20秒。现在我的问题是:如何更快地填充datagridview?
编辑
我看看here,但我不知道如何实现它。有人可以帮助我吗?