Compartilhar via


Como adicionar uma coluna não associada a um controle DataGridView do Data-Bound Windows Forms

Os dados exibidos no controle DataGridView normalmente virão de uma fonte de dados de algum tipo, mas talvez você queira exibir uma coluna de dados que não vem da fonte de dados. Esse tipo de coluna é chamado de coluna não associada. Colunas não associadas podem tomar muitas formas. Frequentemente, eles são usados para fornecer acesso aos detalhes de uma linha de dados.

O exemplo de código a seguir demonstra como criar uma coluna não associada de botões Detalhes para exibir uma tabela filha relacionada a uma linha específica em uma tabela pai ao implementar um cenário de mestre/detalhe. Para responder a cliques de botão, implemente um manipulador de eventos DataGridView.CellClick que exibe um formulário que contém a tabela filha.

Há suporte para essa tarefa no Visual Studio. Consulte também Como adicionar e remover colunas no controle DataGridView dos Windows Forms usando o designer.

Exemplo

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

Compilando o código

Este exemplo requer:

Consulte também