Diferenças entre os controles DataGridView e DataGrid dos Windows Forms

O DataGridView controle é um novo controle que substitui o DataGrid controle. O DataGridView controle fornece inúmeros recursos básicos e avançados que estão faltando no DataGrid controle. Além disso, a DataGridView arquitetura do controle torna muito mais fácil estender e personalizar do que o DataGrid controle.

A tabela a seguir descreve alguns dos principais recursos disponíveis no DataGridView controle que estão faltando no DataGrid controle.

Recurso de controle DataGridView Descrição
Vários tipos de coluna O DataGridView controle fornece mais tipos de coluna internos do que o DataGrid controle. Esses tipos de coluna atendem às necessidades da maioria dos cenários comuns, mas também são mais fáceis de estender ou substituir do que os tipos de coluna no DataGrid controle. Para obter mais informações, consulte Tipos de coluna no controle DataGridView dos Windows Forms.
Várias maneiras de exibir dados O DataGrid controle é limitado a exibir dados de uma fonte de dados externa. O DataGridView controle, no entanto, pode exibir dados não acoplados armazenados no controle, dados de uma fonte de dados acoplada ou dados vinculados e não acoplados juntos. Você também pode implementar o DataGridView modo virtual no controle para fornecer gerenciamento de dados personalizado. Para obter mais informações, consulte Modos de exibição dos dados no controle DataGridView dos Windows Forms.
Várias maneiras de personalizar a exibição de dados O DataGridView controle fornece muitas propriedades e eventos que permitem especificar como os dados são formatados e exibidos. Por exemplo, você pode alterar a aparência de células, linhas e colunas dependendo dos dados que elas contêm ou pode substituir os dados de um tipo de dados por dados equivalente de outro tipo. Para obter mais informações, consulte Formatação de dados no controle DataGridView dos Windows Forms.
Várias opções para alterar o comportamento e a aparência de célula, linha, coluna e cabeçalho O DataGridView controle permite que você trabalhe com componentes de grade individuais de várias maneiras. Por exemplo, você pode congelar linhas e colunas para evitar que elas rolem; ocultar linhas, colunas e cabeçalhos; alterar o modo como os tamanhos de linha, coluna e cabeçalho são ajustados; alterar a maneira como os usuários fazem seleções; e fornecer Dicas de Ferramentas e menus de atalho para células, linhas e colunas individuais.

O DataGrid controle é mantido para compatibilidade com versões anteriores e para necessidades especiais. Para quase todos os fins, você deve usar o DataGridView controle. O único recurso que está disponível no controle que não está disponível no DataGridDataGridView controle é a exibição hierárquica de informações de duas tabelas relacionadas em um único controle. Você deve usar dois DataGridView controles para exibir informações de duas tabelas que estão em uma relação mestre/detalhe.

Atualizando para o controle DataGridView

Se você tiver aplicativos existentes que usam o controle em um cenário simples de vinculação de dados sem personalizações, você pode simplesmente substituir o DataGrid controle antigo pelo novo controle. Ambos os controles usam a arquitetura padrão de vinculação de dados do Windows Forms, portanto, o DataGridView controle exibirá seus dados vinculados sem necessidade de configuração adicional. No entanto, convém considerar tirar proveito das melhorias de vinculação de dados, vinculando seus dados a um BindingSource componente, que você pode vincular ao DataGridView controle. Para obter mais informações, consulte Componente BindingSource.

Como o controle tem uma arquitetura totalmente nova, não há um caminho de conversão simples que permitirá que você use DataGrid personalizações com o DataGridViewDataGridView controle. Muitas DataGrid personalizações são desnecessárias com o DataGridView controle, no entanto, devido aos recursos internos disponíveis no novo controle. Se você tiver criado tipos de coluna personalizados para o controle que deseja usar com o DataGridDataGridView controle, será necessário implementá-los novamente usando a nova arquitetura. Para obter mais informações, consulte Personalizando o controle DataGridView dos Windows Forms.

Confira também