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 |
---|---|
Usada com valores com base em texto.Gerado automaticamente ao ligar para números e cadeias de caracteres. |
|
Usado com Boolean e CheckState valores. Gerado automaticamente ao ligar a valores desses tipos. |
|
Usado para exibir imagens.Gerado automaticamente ao ligar a matrizes de byte, Image objetos, ou Icon objetos. |
|
Usado para exibir botões nas células.Não gerada automaticamente ao ligar.Normalmente usado sistema autônomo colunas não acopladas. |
|
Usado para exibir listas suspensas nas células.Não gerada automaticamente ao ligar.Geralmente a data-limite manualmente. |
|
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