DataGridView索引

时间:2012-12-05 10:09:09

标签: datagridview

我使用Microsoft Visual Studio 2005.我有一个问题,即DataGridView试图阻止索引返回到第一个单元格和所选单元格的持久性。

当更新到期时光标到第一个单元格

我这样做是为了阻止它

Private Sub DataGridView100_RowsAdded(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewRowsAddedEventArgs) Handles DataGridView100.RowsAdded


    DataGridView100.Columns(0).Selected = False
    DataGridView100.Rows(0).Selected = False
    DataGridView100.Rows(0).Cells(0).Selected = False

    'Another way

    'DataGridView100.ClearSelection()

End Sub

我现在想要的是:当我选择一个单元格或一列来保留所选择的选项时

第二个问题 还想要在单元格内更改数字以更改该单元格的背景

1 个答案:

答案 0 :(得分:0)

这是在C#中,但可能你会做同样的事情。

首先:更改背景颜色:

private void dataGridView1_CellEndEdit(object sender, DataGridViewCellEventArgs e)
{
 // your code here
dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Style.BackColor = Color.Red
}

您是否需要仅在单元格中的数字发生变化时才更改的条件?您是否需要通过手动更改细胞内容或通过程序化更改来改变变化?

第二:保存选择

首先存储选定的行索引:

private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e) 
{
  nSelectedRowIndex = e.RowIndex;

}

然后在DataGridView100_RowsAdded

// your code

dataGridView1.ClearSelection();
dataGridView1.Rows[nSelectedRowIndex].Selected = true

这适用于选定的行,您可以存储选定的单元格索引,而不是添加.Cells[nSelectedCellIndex.Selected = true