Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
El DataGridView control puede mostrar datos en tres modos distintos: vinculados, no vinculados y virtuales. Elija el modo más adecuado en función de sus requisitos.
Desatado
El modo unbound es adecuado para mostrar cantidades relativamente pequeñas de datos que administra mediante programación. No se adjunta el DataGridView control directamente a un origen de datos como en modo enlazado. En su lugar, debe rellenar el control usted mismo, normalmente mediante el DataGridViewRowCollection.Add método .
El modo unbound puede ser especialmente útil para los datos estáticos, de solo lectura o cuando desea proporcionar su propio código que interactúe con un almacén de datos externo. Cuando quiera que los usuarios interactúen con un origen de datos externo, sin embargo, normalmente utilizará el modo vinculado.
Para obtener un ejemplo que usa un elemento sin enlazar DataGridViewde solo lectura, vea How to: Create an Unbound Windows Forms DataGridView Control.
Vinculado
El modo enlazado es adecuado para administrar los datos mediante la interacción automática con el almacén de datos. Puede adjuntar el DataGridView control directamente a su origen de datos estableciendo la DataSource propiedad . Cuando el control está enlazado a datos, las filas de datos se insertan y extraen sin necesidad de una administración explícita por su parte. Cuando la AutoGenerateColumns propiedad es true, cada columna del origen de datos hará que se cree una columna correspondiente en el control . Si prefiere crear sus propias columnas, puede establecer esta propiedad false en y usar la DataPropertyName propiedad para enlazar cada columna al configurarla. Esto resulta útil cuando desea usar un tipo de columna distinto de los tipos que se generan de forma predeterminada. Para obtener más información, vea Tipos de columna en el control DataGridView de formularios Windows Forms.
Para obtener un ejemplo que usa un control enlazado DataGridView, consulte Guía paso a paso: Validación de datos en el control DataGridView de Windows Forms.
También puede agregar columnas no enlazadas a un control DataGridView en modo enlazado. Esto resulta útil cuando desea mostrar una columna de botones o vínculos que permiten a los usuarios realizar acciones en filas específicas. También resulta útil mostrar columnas con valores calculados a partir de columnas enlazadas. Puede rellenar los valores de celda de las columnas calculadas en un controlador para el evento CellFormatting. Sin embargo, si usa un DataSet o un DataTable como origen de datos, es posible que quiera usar la propiedad DataColumn.Expression para crear una columna calculada en su lugar. En este caso, el control tratará la DataGridView columna calculada igual que cualquier otra columna del origen de datos.
La clasificación por columnas no vinculadas en modo vinculado no está soportada. Si crea una columna sin enlazar en modo enlazado que contiene valores editables por el usuario, debe implementar el modo virtual para mantener estos valores cuando el control se ordena mediante una columna enlazada.
Virtual
Con el modo virtual, puede implementar sus propias operaciones de administración de datos. Esto es necesario para mantener los valores de las columnas sin enlazar en modo enlazado cuando el control se ordena por columnas enlazadas. Sin embargo, el uso principal del modo virtual es optimizar el rendimiento al interactuar con grandes cantidades de datos.
Adjunta el DataGridView control a una memoria caché que administra y el código controla cuando se insertan y extraen filas de datos. Para mantener la superficie de memoria pequeña, la memoria caché debe ser similar en tamaño al número de filas que se muestran actualmente. Cuando el usuario desplaza nuevas filas a la vista, el código solicita nuevos datos de la memoria caché y, opcionalmente, vacía los datos antiguos de la memoria.
Al implementar el modo virtual, deberá realizar un seguimiento de cuándo se necesita una nueva fila en el modelo de datos y cuándo revertir la adición de la nueva fila. La implementación exacta de esta funcionalidad dependerá de la implementación del modelo de datos y de la semántica de transacciones del modelo de datos; si el ámbito de confirmación está en el nivel de celda o fila.
Para obtener más información sobre el modo virtual, vea Modo virtual en el control DataGridView de formularios Windows Forms. Para obtener un ejemplo que muestra cómo usar eventos de modo virtual, vea Tutorial: Implementación del modo virtual en el control DataGridView de formularios Windows Forms.
Consulte también
- DataGridView
- DataGridView.DataSource
- DataGridView.VirtualMode
- BindingSource
- DataGridViewColumn.DataPropertyName
- Mostrar datos en el control DataGridView de Windows Forms
- Tipos de columna en el control DataGridView de Windows Forms
- Guía: Crear un control DataGridView no enlazado en Windows Forms
- Cómo enlazar datos al control DataGridView en formularios de Windows Forms
- Modo virtual en el control DataGridView de Windows Forms
- Guía: Implementación del modo virtual en el control DataGridView de Windows Forms
.NET Desktop feedback