Diferencias entre los controles DataGridView y DataGrid de formularios Windows Forms

El control DataGridView es un nuevo control que reemplaza al control DataGrid. El control DataGridView proporciona numerosas funciones básicas y avanzadas que faltan en el control DataGrid. Además, la arquitectura del control DataGridView facilita mucho la extensión y la personalización que el control DataGrid.

En la tabla siguiente se describen algunas de las características principales disponibles en el control DataGridView que faltan en el control DataGrid.

Característica de control de DataGridView Descripción
Varios tipos de columnas El control DataGridView proporciona más tipos de columna integrados que el control DataGrid. Estos tipos de columna satisfacen las necesidades de los escenarios más comunes, pero también son más fáciles de ampliar o reemplazar que los tipos de columna del control DataGrid. Para obtener más información, consulte Tipos de columnas en el control DataGridView de Windows Forms.
Varias maneras de mostrar datos El control DataGrid se limita a mostrar datos de un origen de datos externo. Sin embargo, el control DataGridView puede mostrar datos almacenados no enlazados en el control, datos de un origen de datos enlazado o datos enlazados y sin enlazar juntos. También puede implementar el modo virtual en el control DataGridView para proporcionar administración de datos personalizada. Para obtener más información, consulte Modos de presentación de datos en el control DataGridView de Windows Forms.
Varias maneras de personalizar la presentación de datos El control DataGridView proporciona muchas propiedades y eventos que permiten especificar cómo se da formato a los datos y cómo se muestran. Por ejemplo, puede cambiar la apariencia de las celdas, filas y columnas en función de los datos que contienen, o puede reemplazar los datos de un tipo de datos por datos equivalentes de otro tipo. Para obtener más información, consulte Formato de datos en el control DataGridView de Windows Forms.
Varias opciones para cambiar la apariencia y el comportamiento de las celdas, filas, columnas y encabezados El control DataGridView le permite trabajar con componentes de cuadrícula individuales de muchas maneras. Por ejemplo, puede inmovilizar filas y columnas para evitar que se desplacen; ocultar filas, columnas y encabezados; cambiar la forma en que se ajustan los tamaños de fila, columna y encabezado; cambiar la forma en que los usuarios realizan selecciones, y proporcionan información sobre herramientas y menús contextuales para celdas, filas y columnas individuales.

El control DataGrid se conserva por motivos de compatibilidad con versiones anteriores y para necesidades especiales. Para casi todos los propósitos, debería usar el control DataGridView. La única característica que está disponible en el control DataGrid que no está disponible en el control DataGridView es la presentación jerárquica de información de dos tablas relacionadas en un solo control. Debe usar dos controles DataGridView para mostrar información de dos tablas que guardan una relación de maestro y detalles.

Actualización al control DataGridView

Si tiene aplicaciones existentes que usan el control DataGrid en un escenario simple enlazado a datos sin personalizaciones, simplemente puede reemplazar el control anterior por el nuevo control. Ambos controles usan la arquitectura estándar de Windows Forms para enlace de datos, por lo que el control DataGridView mostrará los datos enlazados sin necesidad de configuración adicional. Sin embargo, podría considerar la posibilidad de aprovechar las mejoras de enlace de datos al enlazar los datos a un componente BindingSource, que podrá enlazar al control DataGridView a continuación. Para obtener más información, consulte Componente BindingSource.

Dado que el control DataGridView tiene una arquitectura completamente nueva, no hay ninguna ruta de conversión sencilla que le permita usar personalizaciones DataGrid con el control DataGridView. Sin embargo, muchas personalizaciones DataGrid no son necesarias con el control DataGridView, debido a las características integradas disponibles en el nuevo control. Si ha creado tipos de columna personalizados para el control DataGrid que desea usar con el control DataGridView, tendrá que volver a implementarlos mediante la nueva arquitectura. Para obtener más información, consulte Personalización del control DataGridView de Windows Forms.

Consulte también