刷新DataGridView时如何保持单元处于活动状态(而不仅仅是选中/突出显示)?

时间:2018-10-31 15:43:43

标签: c# .net winforms datagridview

我有一个带有防火墙规则列表的DataGridView。我有一个用于更新/重新加载DataGridView的按钮,但是我想在重新加载时保持选择的最后一个单元格处于活动状态(并且可见)。

使用我当前正在使用的代码,仅使其突出显示,而不能完全激活/可用。这是代码段:

int x = DataGridView1.CurrentRow.Index;
updateTable();
DataGridView1.Rows[x].Cells[0].Selected = true;

这是updateTable()代码:

public void updateTable()
        {
            DataGridView1.DataSource = null;
            DataGridView1.Rows.Clear();
            DataTable dt = new DataTable();
            dt = myDLL.getFirewallRules();
            DataGridView1.DataSource = dtFirewall;
            DataGridView1.Columns["OriginalIndex"].Visible = false;
        }

(因为["Original Index"]列代表我要隐藏的固定索引。)

我在滚动列表中找到了如何将其保持为第一行的代码(如果可以的话),但是无法选择并准备使用它,它始终默认为第一行的第一个单元格行。

我该怎么做?

1 个答案:

答案 0 :(得分:0)

您可以使用CurrentCell属性来实现我认为的目的。

这是一个已经解决的类似问题。 Datagridview: How to set a cell in editing mode?

如果BeginEdit函数有问题,请尝试:

dataGridView1.EditMode = DataGridViewEditMode.EditOnKeystrokeOrF2;

我希望这对您有帮助。