【发布时间】:2017-12-21 06:51:42
【问题描述】:
我有一个 datagridview 通过 datagridview 的 datasource 属性绑定到一个数据表。使用下面的代码行,一行一行地添加,并且始终位于 datagridview 的顶部,例如:
DataRow newRow = myDataTable.NewRow();
newRow[0] = "column1 value";
newRow[1] = "column2 value";
myDataTable.Rows.InsertAt(newRow, 0);
问题是 datagridview 垂直滚动向下移动,使得在 datagridview 顶部添加的最后一行不可见,所以我不希望垂直滚动向下移动以使插入到顶部的最后一行可见。
我该怎么做?
尝试 1:
DataGridViewRow selectedRow = null;
if (dataGridView1.SelectedRows.Count > 0)
selectedRow = dataGridView1.SelectedRows[0];
DataRow newRow = myDataTable.NewRow();
newRow[0] = "column1 value";
newRow[1] = "column2 value";
myDataTable.Rows.InsertAt(newRow, 0);
if (selectedRow != null)
dataGridView1.FirstDisplayedScrollingRowIndex = selectedRow.Index;
else
dataGridView1.FirstDisplayedScrollingRowIndex = 0;
提取自here。
好像不行。 dataGridView1.FirstDisplayedScrollingRowIndex 始终为 0,但 datagridview 继续向下滚动。
【问题讨论】:
标签: c# winforms datagridview datatable