Udostępnij za pośrednictwem


Jak: Pobieranie i ustawianie bieżącej komórki w kontrolce Windows Forms DataGridView.

Interakcja z DataGridView często wymaga programowego ustalenia, która komórka jest obecnie aktywna. Może być również konieczne zmianę bieżącej komórki. Te zadania można wykonać za pomocą właściwości CurrentCell.

Notatka

Nie można ustawić bieżącej komórki w wierszu lub kolumnie, która ma właściwość Visible ustawioną na wartość false.

Zależnie od trybu zaznaczania kontrolki DataGridView, zmiana bieżącej komórki może zmienić zaznaczenie. Aby uzyskać więcej informacji, zobacz tryby wyboru w kontrolce DataGridView formularzy systemu Windows.

Aby programowo pobrać aktualną komórkę

  • Użyj właściwości CurrentCell kontrolki DataGridView.

    private void getCurrentCellButton_Click(object sender, System.EventArgs e)
    {
        string msg = String.Format("Row: {0}, Column: {1}",
            dataGridView1.CurrentCell.RowIndex,
            dataGridView1.CurrentCell.ColumnIndex);
        MessageBox.Show(msg, "Current Cell");
    }
    
    Private Sub getCurrentCellButton_Click(ByVal sender As Object, _
        ByVal e As System.EventArgs) Handles getCurrentCellButton.Click
    
        Dim msg As String = String.Format("Row: {0}, Column: {1}", _
            dataGridView1.CurrentCell.RowIndex, _
            dataGridView1.CurrentCell.ColumnIndex)
        MessageBox.Show(msg, "Current Cell")
    
    End Sub
    

Aby ustawić bieżącą komórkę za pomocą kodu

  • Ustaw właściwość CurrentCell kontrolki DataGridView. W poniższym przykładzie kodu bieżąca komórka jest ustawiona na wiersz 0, kolumna 1.

    private void setCurrentCellButton_Click(object sender, System.EventArgs e)
    {
        // Set the current cell to the cell in column 1, Row 0.
        this.dataGridView1.CurrentCell = this.dataGridView1[1,0];
    }
    
    Private Sub setCurrentCellButton_Click(ByVal sender As Object, _
        ByVal e As System.EventArgs) Handles setCurrentCellButton.Click
    
        ' Set the current cell to the cell in column 1, Row 0. 
        Me.dataGridView1.CurrentCell = Me.dataGridView1(1, 0)
    
    End Sub
    

Kompilowanie kodu

Ten przykład wymaga:

  • Button kontroluje kontrolki o nazwach getCurrentCellButton i setCurrentCellButton. W programie Visual C# należy dołączyć zdarzenia Click dla każdego z przycisków do skojarzonej procedury obsługi zdarzeń w przykładowym kodzie.

  • Kontrolka DataGridView o nazwie dataGridView1.

  • Odwołania do zestawów System i System.Windows.Forms.

Zobacz też