我有一个datagridview通过datagridview的数据源属性绑定到数据表。行是通过一个始终在用下面的代码行的DataGridView的顶部增加了一个,例如:C#Winforms:插入项目到datagridview的顶部向下滚动
DataRow newRow = myDataTable.NewRow();
newRow[0] = "column1 value";
newRow[1] = "column2 value";
myDataTable.Rows.InsertAt(newRow, 0);
的问题是,datagridview的垂直滚动向下移动,使不可见DataGridView的顶部添加的最后一行所以我不希望垂直滚动向下移动,以便在顶部插入可见的最后一行。
我该怎么做?
ATTEMPT 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继续向下滚动。
它似乎不工作。看到我的更新。 – user1624552
选定的行如何?有没有? –
不,永远不会。没有选择行。 dataGridView1.SelectedRows.Count始终为0。 – user1624552