asp.net

La diferencia entre un DataGrid y un GridView en ASP.NET?



(7)

DataGrid era un control ASP.NET 1.1, aún compatible. GridView llegó en 2.0, hizo ciertas tareas más simples y agregó diferentes funciones de enlace de datos:

Este enlace tiene una comparación de características DataGrid y GridView -

https://msdn.microsoft.com/en-us/library/05yye6k9(v=vs.100).aspx

He estado haciendo el desarrollo de ASP.NET por un tiempo, y he utilizado los controles GridView y DataGrid anteriormente para varias cosas, pero nunca pude encontrar una buena razón para usar una u otra. Me gustaría saber:

¿Cuál es la diferencia entre estos 2 controles ASP.NET? ¿Cuáles son las ventajas o desventajas de ambos? ¿Es uno más rápido? ¿Más nuevo? Más fácil de mantener?

El resumen intellisense para los controles no parece describir ninguna diferencia entre los dos. Ambos pueden ver, editar y ordenar datos y generar columnas automáticamente en tiempo de ejecución.

Editar: Visual Studio 2008 ya no muestra DataGrid como un control disponible en la caja de herramientas. Todavía está disponible (para el soporte heredado, supongo) si lo escribes a mano.


Si está trabajando en Visual Studio 2008 / .NET 3.5, probablemente no debería usar ninguno. Use ListView: le brinda las funciones de GridView combinadas con la flexibilidad de estilo de un repetidor.


DataGrid originalmente estaba en .NET 1.0. El GridView fue presentado (y reemplazado el DataGrid) en .NET 2.0. Proporcionan una funcionalidad casi idéntica.


La diferencia clave está en el IIRC de administración de ViewState. DataGrid requiere que ViewState esté activado para poder editar y ordenar las capacidades.


cierta diferencia básica entre gridview y la vista de detalles

el control GridView también tiene una serie de nuevas características y ventajas sobre el control DataGrid, que incluyen:

· Capacidades de tiempo de diseño más ricas. · Capacidades de enlace de fuentes de datos mejoradas. · Manejo automático de clasificación, paginación, actualizaciones y eliminaciones. · Tipos de columnas adicionales y operaciones de columnas en tiempo de diseño. · Una interfaz de usuario (IU) de buscapersonas personalizada con la propiedad PagerTemplate.

Las diferencias entre el control GridView y el control DataGrid incluyen: · Soporte diferente de paginación personalizada. · Diferentes modelos de eventos.


Una diferencia clave en cuanto a la seguridad es que DataGrid usa BoundColumn, que no codifica HtmlEncode los datos enlazados. Tampoco hay propiedad para activar o desactivar HtmlEncoding, por lo que debe hacerlo de alguna forma.

GridView utiliza BoundField, que hace HtmlEncode de forma predeterminada en los datos vinculados y tiene una propiedad HtmlEncode si necesita apagarlo.


El control GridView es el sucesor del control DataGrid . Al igual que el control DataGrid , el control GridView se diseñó para mostrar datos en una tabla HTML. Cuando se vincula a una fuente de datos, los controles DataGrid y GridView muestran una fila de un DataSource como una fila en una tabla de salida.

Los controles DataGrid y GridView se derivan de la clase WebControl . Aunque tiene un modelo de objeto similar al del control DataGrid , el control GridView también tiene una serie de características y ventajas nuevas sobre el control DataGrid , que incluyen:

  • Mejores capacidades de tiempo de diseño.
  • Mejora de las capacidades de enlace de fuentes de datos.
  • Manejo automático de clasificación, paginación, actualizaciones y eliminaciones.
  • Tipos de columnas adicionales y operaciones de columnas en tiempo de diseño.
  • Una interfaz de usuario (UI) de buscapersonas personalizada con la propiedad PagerTemplate.

Las diferencias entre el control GridView y el control DataGrid incluyen:

  • Diferente soporte de paginación personalizada.
  • Diferentes modelos de eventos.

La ordenación, la paginación y la edición in situ de datos requieren codificación adicional cuando se usa el control DataGrid . El control GridView permite agregar capacidades de clasificación, paginación y edición sin escribir ningún código. En su lugar, puede automatizar estas tareas, junto con otras tareas comunes, como el enlace de datos a una fuente de datos, estableciendo propiedades en el control.