Comment : ajouter une colonne indépendante à un contrôle DataGridView Windows Forms lié aux données

Les données que vous affichez dans le contrôle DataGridView proviennent normalement d'une source de données quelconque. Vous pouvez toutefois vouloir afficher une colonne de données qui ne provienne pas de la source de données. Ce type de colonne est appelé colonne indépendante. Les colonnes indépendantes peuvent prendre de nombreuses formes. Souvent, elles sont utilisées pour fournir un accès aux détails d'une ligne de données.

L’exemple de code suivant montre comment créer une colonne indépendante de boutons Détails pour afficher une table enfant liée à une ligne particulière dans une table parente lorsque vous implémentez un scénario maître/détail. Pour répondre aux clics de bouton, implémentez un gestionnaire d'événements DataGridView.CellClick qui affiche un formulaire contenant la table enfant.

Cette tâche est prise en charge dans Visual Studio. Consultez également Comment : ajouter et supprimer des colonnes dans le contrôle DataGridView Windows Forms à l’aide du concepteur.

Exemple

private void CreateUnboundButtonColumn()
{
    // Initialize the button column.
    DataGridViewButtonColumn buttonColumn =
        new DataGridViewButtonColumn();
    buttonColumn.Name = "Details";
    buttonColumn.HeaderText = "Details";
    buttonColumn.Text = "View Details";

    // Use the Text property for the button text for all cells rather
    // than using each cell's value as the text for its own button.
    buttonColumn.UseColumnTextForButtonValue = true;

    // Add the button column to the control.
    dataGridView1.Columns.Insert(0, buttonColumn);
}
Private Sub CreateUnboundButtonColumn()

    ' Initialize the button column.
    Dim buttonColumn As New DataGridViewButtonColumn

    With buttonColumn
        .HeaderText = "Details"
        .Name = "Details"
        .Text = "View Details"

        ' Use the Text property for the button text for all cells rather
        ' than using each cell's value as the text for its own button.
        .UseColumnTextForButtonValue = True
    End With

    ' Add the button column to the control.
    dataGridView1.Columns.Insert(0, buttonColumn)

End Sub

Compilation du code

Cet exemple nécessite :

Voir aussi