Tipos de coluna no Windows Forms DataGridView controle

The DataGridView controle usa vários tipos de coluna para exibir suas informações e permitir que os usuários modifique ou adicione informações.

Quando você BIND um DataGridView controlar e conjunto o AutoGenerateColumns propriedade para true, colunas são geradas automaticamente usando tipos de coluna padrão apropriados para os tipos de dados contidos na fonte de dados ligada.

Você também pode criar instâncias de qualquer uma das classes coluna você mesmo e adicioná-los à coleção retornada com o Columns propriedade. Você pode criar essas instâncias para uso sistema autônomo colunas não acopladas ou você pode ligá-los manualmente.Manualmente limite colunas são úteis, por exemplo, quando você deseja substituir uma coluna de um tipo gerada automaticamente com uma coluna de outro tipo.

A tabela a seguir descreve as várias classes de coluna disponível para uso no DataGridView controle.

Classe

Descrição

DataGridViewTextBoxColumn

Usada com valores com base em texto.Gerado automaticamente ao ligar para números e cadeias de caracteres.

DataGridViewCheckBoxColumn

Usado com Boolean e CheckState valores. Gerado automaticamente ao ligar a valores desses tipos.

DataGridViewImageColumn

Usado para exibir imagens.Gerado automaticamente ao ligar a matrizes de byte, Image objetos, ou Icon objetos.

DataGridViewButtonColumn

Usado para exibir botões nas células.Não gerada automaticamente ao ligar.Normalmente usado sistema autônomo colunas não acopladas.

DataGridViewComboBoxColumn

Usado para exibir listas suspensas nas células.Não gerada automaticamente ao ligar.Geralmente a data-limite manualmente.

DataGridViewLinkColumn

Usado para exibir links nas células.Não gerada automaticamente ao ligar.Geralmente a data-limite manualmente.

O tipo de coluna personalizada

Você pode criar sua própria classe de coluna, herdando o DataGridViewColumn a classe ou em qualquer uma das suas classes derivadas para fornecer controles hospedados, comportamento ou aparência personalizada. Para mais informações, consulte: Como: Personalizar células e colunas em Windows Forms DataGridView controle, estendendo seu comportamento e aparência.

Esses tipos de coluna são descritos mais detalhadamente nas seções a seguir.

DataGridViewTextBoxColumn

The DataGridViewTextBoxColumn é um tipo de coluna de finalidade geral para uso com sistema autônomo valores com base em texto, sistema autônomo números e cadeias de caracteres. Na edição de modo, um TextBox controle é exibido na célula ativo, permitindo que os usuários modificar o valor da célula.

Os valores das células são automaticamente convertidos em cadeias de caracteres de exibição.Valores inseridos ou modificados pelo usuário são automaticamente analisados para criar um valor de célula do tipo de dados apropriado.Você pode personalizar essas conversões pelo tratamento o CellFormatting e CellParsing eventos da DataGridView controle.

O tipo de dados do valor de célula de uma coluna é especificado no ValueType propriedade da coluna.

DataGridViewCheckBoxColumn

The DataGridViewCheckBoxColumn é usado com Boolean e CheckState valores. Boolean sistema autônomo valores são exibidos sistema autônomo caixas de seleção de dois estados ou três estados, dependendo do valor da ThreeState propriedade. Quando a coluna está acoplada CheckState valores, o ThreeState valor da propriedade é true Por padrão.

Normalmente, os valores de célula de caixa de seleção destinam para armazenamento, como qualquer Outros dado, ou para executar operações em massa.Se você quiser responder imediatamente quando os usuários clicam em uma célula da caixa de seleção, você pode manipular o CellClick evento, mas esse evento ocorre antes que o valor da célula seja atualizado. Se você precisar o novo valor no momento do clicar, uma opção é calcular qual será o valor esperado com base no valor corrente.Outra abordagem é confirmar a alterar imediatamente e tratar o CellValueChanged evento respondê-lo. Para confirmar a alterar, quando a célula for clicada, você deve manipular o CurrentCellDirtyStateChanged evento. No manipulador, se a célula corrente for uma célula da caixa de seleção, chame o CommitEdit método e passe a Commit valor.

DataGridViewImageColumn

The DataGridViewImageColumn é usado para exibir imagens. Colunas de imagem podem ser preenchidas automaticamente a partir de uma fonte de dados, preenchidas manualmente para colunas não acopladas ou preenchidas dinamicamente em um manipulador para o CellFormatting evento.

O população automático de uma coluna de imagem de uma fonte de dados funciona com matrizes de byte em uma variedade de formatos de imagem, incluindo todos os formatos suportados pelo Image classe e o formato de imagem OLE usado pelo Microsoft ® acesso e o banco de dados de exemplo Northwind.

Preencher uma coluna de imagem manualmente é útil quando você deseja fornecer a funcionalidade de um DataGridViewButtonColumn, mas com uma aparência personalizada. Você pode manipular o DataGridView.CellClick evento para responder a cliques em uma célula de imagem.

Preenchendo as células de uma coluna de imagem em um manipulador para o CellFormatting evento é útil quando você desejar fornecer imagens para valores calculados ou valores em formatos de imagem não. Por exemplo, você pode tem uma coluna "Riscos" com valores de seqüência de caracteres, sistema autônomo"high", "middle", e "low" que você deseja exibir sistema autônomo ícones. Como alternativa, você pode ter uma coluna de "Imagem" contém os locais das imagens que devem ser carregados em vez do conteúdo binário de imagens.

DataGridViewButtonColumn

Com o DataGridViewButtonColumn, você pode exibir uma coluna de células que contêm botões. Isso é útil quando você desejar fornecer uma maneira fácil para sistema autônomo usuários executar ações sobre registros específicos, sistema autônomo fazer um pedido ou exibir registros filho em uma janela separada.

Botão colunas não são geradas automaticamente quando um de ligação de dadosDataGridView controle. Para usar o botão colunas, você deve criar-las manualmente e adicioná-los à coleção retornada com o DataGridView.Columns propriedade.

Você pode responder a cliques do usuário nas células de botão, manipulando o DataGridView.CellClick evento.

DataGridViewComboBoxColumn

Com o DataGridViewComboBoxColumn, você pode exibir uma coluna de células que contêm soltar caixas de listagem suspensa. Isso é útil para entrada de dados em campos que só pode conter valores específicos, sistema autônomo a coluna de categoria da tabela Produtos no banco de dados de exemplo Northwind.

Você pode popular a lista suspensa usada para todas as células da mesma forma que você deve popular um ComboBox na lista suspensa, manualmente por meio da coleção retornada com o Items propriedade, ou vinculando-o a uma fonte de dados por meio do DataSource, DisplayMember, e ValueMember Propriedades. Para obter mais informações, consulte ComboBox controle (Windows Forms).

Você pode BIND os valores real da célula a fonte de dados usado pelo DataGridView controle definindo a DataPropertyName propriedade das System.Windows.Forms.DataGridViewComboBoxColumn.

Colunas da caixa de combinação não são geradas automaticamente quando um de ligação de dadosDataGridView controle. Para usar colunas da caixa de combinação, você deve criar-las manualmente e adicioná-los à coleção retornada com o Columns propriedade.

DataGridViewLinkColumn

Com o DataGridViewLinkColumn, você pode exibir uma coluna de células que contêm esses hiperlinks. Isso é útil para valores de URL da fonte de dados ou sistema autônomo uma alternativa para a coluna de botão para comportamentos especiais, sistema autônomo abrir uma janela com registros filho.

Vincular a colunas não são geradas automaticamente quando um de ligação de dadosDataGridView controle. Para usar colunas de link, você deve criá-las manualmente e adicioná-los à coleção retornada com o Columns propriedade.

Você pode responder a cliques do usuário em links, manipulando o CellContentClick evento. Este evento é diferente do CellClick e CellMouseClick eventos ocorrem quando um usuário clica em qualquer lugar em uma célula.

The DataGridViewLinkColumn classe fornece várias propriedades para modificar a aparência dos links antes, durante e depois que eles são clicados.

Consulte também

Tarefas

Como: Exibir imagens em células do Windows Forms DataGridView controle

Como: Trabalhar com colunas de imagem em Windows Forms DataGridView controle

Referência

DataGridView

DataGridViewColumn

DataGridViewButtonColumn

DataGridViewCheckBoxColumn

DataGridViewComboBoxColumn

DataGridViewImageColumn

DataGridViewTextBoxColumn

DataGridViewLinkColumn

Outros recursos

DataGridView controle (Windows Forms)

Personalizando o Windows Forms DataGridView controle