Comment : obtenir et définir la cellule active dans le contrôle DataGridView Windows Forms

Mise à jour : novembre 2007

L'interaction avec DataGridView requiert souvent que vous découvriez par programme la cellule qui est actuellement active. Vous pouvez devoir également modifier la cellule active. Vous pouvez effectuer ces tâches avec la propriété CurrentCell.

Remarque :

Vous ne pouvez pas définir la cellule active dans une ligne ou une colonne dont la propriété Visible a la valeur false.

Selon le mode de sélection du contrôle DataGridView, la modification de la cellule active peut modifier la sélection. Pour plus d'informations, consultez Modes de sélection dans le contrôle DataGridView Windows Forms.

Pour obtenir la cellule active par programme

  • Utilisez la propriété DataGridView du contrôle CurrentCell.

    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
    
    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");
    }
    

Pour définir la cellule active par programme

  • Définissez la propriété CurrentCell du contrôle DataGridView. Dans l'exemple de code suivant, la cellule active a pour valeur la ligne 0, et la colonne 1.

    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
    
    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];
    }
    

Compilation du code

Cet exemple nécessite les éléments suivants :

  • Des contrôles Button nommés getCurrentCellButton et setCurrentCellButton. En Visual C#, vous devez joindre les événements Click pour chaque bouton au gestionnaire d'événements associé dans l'exemple de code.

  • Un contrôle DataGridView nommé dataGridView1.

  • Références aux assemblys System et System.Windows.Forms.

Voir aussi

Concepts

Modes de sélection dans le contrôle DataGridView Windows Forms

Référence

DataGridView

DataGridView.CurrentCell

Autres ressources

Fonctionnalités de base liées aux colonnes, lignes et cellules dans le contrôle DataGridView Windows Forms