C#选择并滚动到DataGridView中选择的行

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#选择并滚动到DataGridView中选择的行相关的知识,希望对你有一定的参考价值。

我有DataGridView,现在我想在循环中设置选择行:

  • 点击按钮,
  • 选择并滚动到行索引10
  • 睡1s
  • 选择并滚动到行索引12
  • 睡1s
  • 选择并滚动到行索引15

但是现在,当点击时,网格滚动但没有设置为选中行。

完成所有操作后,网格只会设置为已选中并滚动到所选的最新行。

这里我设置选择的代码:

dtgList.Rows[dtgList.CurrentCell.RowIndex].Selected = false;
dtgList.Rows[dtgList.CurrentCell.RowIndex].Cells[0].Selected = false;

dtgList.Rows[Int32.Parse(tbRow.Text)].Selected = true;
dtgList.Rows[Int32.Parse(tbRow.Text)].Cells[0].Selected = true;

请帮助我!!!

答案

试试这个:

int selectedIndex = Int32.Parse(tbRow.Text);

if (dtgList.Rows.Count - 1 >= selectedIndex)
{
    dtgList.FirstDisplayedScrollingRowIndex = selectedIndex;
    dtgList.Rows[selectedIndex].Selected = true;
    dtgList.Rows[selectedIndex].Cells[0].Selected = true;                    
}

以上是关于C#选择并滚动到DataGridView中选择的行的主要内容,如果未能解决你的问题,请参考以下文章

DataGridView 选择的行到 DataTable

从 BindingList 中删除最后一条记录选择最后一行导致 DataGridView 滚动

滚动后Datagrid选择了错误的行

C# 语言单击DataGridView的行参数传递到另一个窗体

DataGridView 和复选框自动重新选择

如何让DataGridview控件自动滚动到指定的行或列