Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
O controle DataGridView pode exibir dados em três modos distintos: associados, não associados e virtuais. Escolha o modo mais adequado com base em seus requisitos.
Desvinculado
O modo não associado é adequado para exibir quantidades relativamente pequenas de dados que você gerencia programaticamente. Você não anexa o controle DataGridView diretamente a uma fonte de dados como no modo associado. Em vez disso, você deve preencher o controle por conta própria, normalmente usando o método DataGridViewRowCollection.Add.
O modo não associado pode ser particularmente útil para dados estáticos e de leitura única, ou quando você deseja fornecer seu próprio código que interage com um armazenamento de dados externo. Quando quiser que os usuários interajam com uma fonte de dados externa, no entanto, você normalmente usará o modo associado.
Para obter um exemplo que usa um DataGridView não associado somente leitura, consulte Como criar um controle DataGridView dos Windows Forms não associados.
Associado
O modo associado é adequado para gerenciar dados usando a interação automática com o armazenamento de dados. Você pode anexar o controle DataGridView diretamente à fonte de dados definindo a propriedade DataSource. Quando o controle for associado aos dados, as linhas de dados serão enviadas e recebidas sem a necessidade de gerenciamento explícito da sua parte. Quando a propriedade AutoGenerateColumns é true, cada coluna na fonte de dados fará com que uma coluna correspondente seja criada no controle. Se preferir criar suas próprias colunas, você poderá definir essa propriedade como false e usar a propriedade DataPropertyName para associar cada coluna ao configurá-la. Isso é útil quando você deseja usar um tipo de coluna diferente dos tipos gerados por padrão. Para obter mais informações, consulte Tipos de coluna no controle DataGridView dos Windows Forms.
Para obter um exemplo que usa um controle de DataGridView associado, consulte Passo a passo: Validando dados no controle DataGridView dos Windows Forms.
Você também pode adicionar colunas não vinculadas a um controle DataGridView no modo vinculado. Isso é útil quando você deseja exibir uma coluna de botões ou links que permitem que os usuários executem ações em linhas específicas. Também é útil exibir as colunas com valores calculados de colunas associadas. Você pode preencher os valores das células para colunas calculadas em um handler para o evento CellFormatting. Se você estiver usando um DataSet ou DataTable como fonte de dados, no entanto, talvez você queira usar a propriedade DataColumn.Expression para criar uma coluna calculada. Nesse caso, o controle DataGridView tratará a coluna calculada como qualquer outra coluna na fonte de dados.
Não há suporte para a classificação por colunas não vinculadas no modo vinculado. Se você criar uma coluna não associada no modo associado que contenha valores editáveis pelo usuário, você deverá implementar o modo virtual para manter esses valores quando o controle for classificado por uma coluna associada.
Virtual
Com o modo virtual, você pode implementar suas próprias operações de gerenciamento de dados. Isso é necessário para manter os valores de colunas não associadas no modo associado quando o controle é classificado por colunas associadas. No entanto, o uso principal do modo virtual é otimizar o desempenho ao interagir com grandes quantidades de dados.
Você anexa o controle DataGridView a um cache que você gerencia, e seu código controla quando as linhas de dados são empurradas e puxadas. Para manter o volume de memória pequeno, o cache deve ser semelhante ao número de linhas exibidas no momento. Quando o usuário rola novas linhas para exibição, seu código solicita novos dados do cache e, opcionalmente, libera dados antigos da memória.
Ao implementar o modo virtual, você precisará acompanhar quando uma nova linha for necessária no modelo de dados e quando reverter a adição da nova linha. A implementação exata dessa funcionalidade dependerá da implementação do modelo de dados e da semântica de transação do modelo de dados; se o escopo de confirmação está no nível da célula ou da linha.
Para obter mais informações sobre o modo virtual, consulte Modo Virtual no controle DataGridView do Windows Forms. Para obter um exemplo que mostra como usar eventos de modo virtual, consulte Passo a passo: implementando o modo virtual no controle DataGridView do Windows Forms.
Consulte também
- DataGridView
- DataGridView.DataSource
- DataGridView.VirtualMode
- BindingSource
- DataGridViewColumn.DataPropertyName
- Exibindo dados no controle DataGridView do Windows Forms
- Tipos de coluna no controle DataGridView dos Windows Forms
- Instruções passo a passo: criando um controle DataGridView não associado do Windows Forms
- Como associar dados ao controle DataGridView do Windows Forms
- Modo virtual no controle DataGridView dos Windows Forms
- passo a passo: implementando o modo virtual no controle DataGridView do Windows Forms
.NET Desktop feedback