Vincular hoja de trabajo a un conjunto de datos usando GridWebs Worksheets Designer
Vinculación de una hoja de trabajo con una base de datos mediante Worksheets Designer
**Paso 1: crear una base de datos de muestra**
- Primero, creamos la base de datos de muestra que se usará en este artículo. Usamos Microsoft Access para crear una base de datos que contiene una tabla llamada Productos. Su esquema se muestra a continuación. Información de diseño de la tabla de productos
- Se agregan algunos registros ficticios a la tabla Productos. Registros en la tabla Productos
Paso 2: Diseño de una aplicación de muestra
Se crea y diseña una aplicación web ASP.NET en Visual Studio.NET como se muestra a continuación. Aplicación de muestra diseñada
Paso 3: Conexión con la base de datos mediante Server Explorer
Es hora de conectarse a la base de datos. Podemos hacerlo fácilmente usando Server Explorer en Visual Studio.NET.
- SeleccioneConección de datos enExplorador de servidores y haga clic derecho.
- SeleccioneAgregar conexión del menú. Seleccionando la opción Agregar conexión
Se muestra el cuadro de diálogo Propiedades de vínculo de datos. El cuadro de diálogo Propiedades de enlace de datos
Con este cuadro de diálogo, puede conectarse a cualquier base de datos. De forma predeterminada, le permite conectarse a una base de datos de SQL Server. Para este ejemplo, necesitamos conectarnos con una base de datos de Access Microsoft.
- Haga clic en elProveedor pestaña.
- SeleccioneMicrosoft Jet 4.0 Proveedor OLE DB desde elProveedores OLE DB lista.
- Hacer clicPróximo. Hacer clic en Siguiente después de seleccionar un proveedor OLE DB
ÉlConexión se abre la página de pestañas.
- Seleccione el archivo de base de datos de Access Microsoft (en nuestro caso, db.mdb) y haga clic enDE ACUERDO. Hacer clic en el botón Aceptar después de seleccionar el archivo de la base de datos
Paso 4: crear objetos de conexión de base de datos gráficamente
- Explore las tablas en la base de datos usando elExplorador de servidores. Solo hay una tabla, Productos.
- Arrastre y suelte la tabla Productos desde laExplorador de servidores alFormulario web. Arrastrar la tabla Productos desde Server Explorer y colocarla en el formulario web
Puede aparecer un cuadro de diálogo. Cuadro de diálogo para confirmar la inclusión de la contraseña de la base de datos en la cadena de conexión
Decida si desea incluir una contraseña de base de datos en la cadena de conexión o no. Para este ejemplo, seleccionamosNo incluir contraseña. Se crearon y agregaron dos objetos de conexión de base de datos (oleDbConnection1 y oleDbDataAdapter1). Objetos de conexión de base de datos (oleDbConnection1 y oleDbDataAdapter1) creados y mostrados
Paso 5: Generación de DataSet
Hasta ahora, hemos creado objetos de conexión a la base de datos, pero aún necesitamos un lugar para almacenar datos después de conectarnos a la base de datos. Un objeto DataSet puede almacenar datos con precisión y también podemos generarlos fácilmente usando VS.NET IDE.
- SeleccioneoleDbDataAdaper1 y haga clic derecho.
- SeleccioneGenerar conjunto de datos opción del menú. Seleccionando la opción Generar conjunto de datos
Se muestra el cuadro de diálogo Generar conjunto de datos. Aquí, es posible seleccionar un nombre para el nuevo objeto DataSet que se creará y qué tablas se le deben agregar.
- Selecciona elAgregar este conjunto de datos al diseñador opción.
- Hacer clicDE ACUERDO. Al hacer clic en el botón Aceptar para generar DataSet
Se agrega un objeto dataSet11 al diseñador. DataSet generado y agregado al diseñador
Paso 6: Usar el Diseñador de hojas de trabajo
Ahora, es hora de abrir el secreto.
- Seleccione el control GridWeb y haga clic con el botón derecho.
- SeleccioneDiseñador de hojas de trabajo opción del menú.
Selección de la opción Diseñador de hojas de trabajo
Se muestra el Editor de colección de hojas de trabajo (también llamado Diseñador de hojas de trabajo). Cuadro de diálogo Editor de colección de hojas de cálculo
El cuadro de diálogo contiene varias propiedades que se pueden configurar para vincular Sheet1 a cualquier tabla de la base de datos.
- Selecciona elFuente de datos propiedad. El objeto dataSet11 generado en el paso anterior aparece en el menú.
- Seleccione dataSet11.
- Haga clic en elmiembro de datos propiedad. Worksheets Designer muestra automáticamente una lista de tablas en dataSet11. Solo hay una tabla, Productos.
- Seleccione la tabla Productos. Configuración de las propiedades DataSource y DataMember
- Compruebe elBindColumns propiedad. Hacer clic en la propiedad BindColumns
Al hacer clic en elBindColumns La propiedad abre el editor de la colección BindColumn. El editor de la colección BindColumn
En BindColumn Collection Editor, todas las columnas delproductos se agregan automáticamente a la colección BindColumns.
- Seleccione cualquier columna y personalice sus propiedades. Por ejemplo, puede modificar el título de cada columna. Modificación del título de la columna ProductID
- Después de hacer los cambios, haga clic enDE ACUERDO.
- Cierre todos los cuadros de diálogo haciendo clic enDE ACUERDO. Finalmente, regresa a la página WebForm1.aspx. Volver a la página WebForm1.aspx después de usar el Diseñador de hojas de trabajo
Arriba, se muestra el nombre de la columna de la tabla Productos. El ancho de las columnas es pequeño, por lo que los nombres completos de algunas columnas no son completamente visibles.
Paso 7: agregar código al controlador de eventos Page_Load
Usamos Worksheets Designer y ahora solo tenemos que agregar código al controlador de eventos Page_Load para llenar el objeto dataSet11 con datos de la base de datos (usando oleDbDataAdapter1) y vincular el control GridWeb a dataSet11 llamando a su método DataBind.
- Agrega el código:
C#
//Implementing Page_Load event handler
private void Page_Load(object sender, System.EventArgs e)
{
//Checking if there is not any PostBack
if (!IsPostBack)
{
try
{
//Filling DataSet with data
oleDbDataAdapter1.Fill(dataSet11);
//Binding GridWeb with DataSet
GridWeb1.DataBind();
}
finally
{
//Finally, closing database connection
oleDbConnection1.Close();
}
}
}
VB.NET
'Implementing Page_Load event handler
Private Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load
'Checking if there is not any PostBack
If Not IsPostBack Then
Try
'Filling DataSet with data
oleDbDataAdapter1.Fill(dataSet11)
'Binding GridWeb with DataSet
GridWeb1.DataBind()
Finally
'Finally, closing database connection
oleDbConnection1.Close()
End Try
End If
End Sub
- Verifique el código agregado al controlador de eventos Page_Load. Código agregado al controlador de eventos Page_Load
Paso 8: Ejecución de la aplicación
Compile y ejecute la aplicación: presioneCtrl+F5 o haga clicComenzar. Ejecutando la aplicación
Después de la compilación, la página WebForm1.aspx se abre en una ventana del navegador con todos los datos cargados desde la base de datos. Datos cargados en el control GridWeb desde la base de datos
Trabajar con el control GridWeb
Cuando los datos se cargan en el control GridWeb, proporciona a los usuarios control sobre los datos. GridWeb ofrece varios tipos diferentes de funciones de manipulación de datos.
Validación de datos
Aspose.Cells.GridWeb crea automáticamente reglas de validación adecuadas para todas las columnas vinculadas según los tipos de datos definidos en la base de datos. Vea el tipo de validación de una celda pasando el cursor sobre ella. Verificando el tipo de validación de una celda
Aquí, la celda seleccionada contiene el**
Eliminación de filas
Para eliminar una fila, seleccione una fila (o cualquier celda de la fila), haga clic con el botón derecho y seleccioneBorrar fila. Seleccionar la opción Eliminar fila del menú
La fila se eliminaría instantáneamente. Datos de cuadrícula (después de eliminar una fila)
Edición de filas
Edite los datos en celdas o filas y luego haga clic enAhorrar oEnviar para guardar los cambios.
Adición de filas
- Para agregar una fila, haga clic derecho en una celda y seleccioneAñadir fila. Seleccionar la opción Agregar fila del menú
Se agrega una nueva fila a la hoja al final de otras filas. Nueva fila agregada a Grid
A la izquierda de la nueva fila hay un asterisco , indicando que la fila es nueva.
- Agregue valores a la nueva fila.
- Hacer clicAhorrar oEnviar para confirmar el cambio. Guardar cambios en los datos haciendo clic en Guardar botón
Configuración del formato de número
Por el momento, los precios en elPrecio del producto columna se muestran como valores numéricos. Es posible hacer que parezcan moneda.
- Vuelva a Visual Studio.NET.
- Abra el editor de la colección BindColumn. ÉlNúmeroTipo propiedad de laPrecio del producto la columna se establece enGeneral. La propiedad NumberType establecida en General
- Hacer clicLa lista desplegable y seleccioneMoneda4 de la lista. La propiedad NumberType cambió a Moneda4
- Vuelva a ejecutar la aplicación. Los valores en elPrecio del producto la columna ahora es moneda. Precios de productos en moneda Formato de número
Edición de datos
La aplicación hasta ahora solo permite a sus usuarios ver los datos de la tabla. Los usuarios pueden editar datos en el control GridWeb pero, al cerrar el navegador y abrir la base de datos, nada ha cambiado. Los cambios realizados no se guardan en la base de datos.
El siguiente ejemplo agrega código a la aplicación para que GridWeb pueda guardar los cambios en la base de datos.
- Abre elPropiedades panel y seleccione el evento SaveCommand del control GridWeb de la lista. Seleccionando el evento SaveCommand de GridWeb
- Haga doble clic en elGuardarComando y VS.NET crea el controlador de eventos GridWeb1_SaveCommand.
- Agregue código a este controlador de eventos que actualizará la base de datos con cualquier dato modificado en el DataSet vinculado a la hoja de trabajo mediante oleDbDataAdapter1.
C#
//Implementing the event handler for SaveCommand event
private void GridWeb1_SaveCommand(object sender, System.EventArgs e)
{
try
{
//Getting the modified data of worksheet as a DataSet
DataSet dataset = (DataSet)GridWeb1.WebWorksheets[0].DataSource;
//Updating database according to modified DataSet
oleDbDataAdapter1.Update(dataset);
}
finally
{
//Closing database connection
oleDbConnection1.Close();
}
}
VB.NET
'Implementing the event handler for SaveCommand event
Private Sub GridWeb1_SaveCommand(ByVal sender As Object, ByVal e As System.EventArgs) Handles GridWeb1.SaveCommand
Try
'Getting the modified data of worksheet as a DataSet
Dim dataset As DataSet = CType(GridWeb1.WebWorksheets(0).DataSource, DataSet)
'Updating database according to modified DataSet
oleDbDataAdapter1.Update(dataset)
Finally
'Closing database connection
oleDbConnection1.Close()
End Try
End Sub
También puede verificar el código agregado al controlador de eventos GridWeb1_SaveCommand Código agregado al controlador de eventos GridWeb1_SaveCommand
Guarde los cambios en la base de datos utilizando elAhorrar botón ahora definitivamente los salva.