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**
  1. 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

todo:imagen_alternativa_texto

  1. Se agregan algunos registros ficticios a la tabla Productos. Registros en la tabla Productos

todo:imagen_alternativa_texto

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

todo:imagen_alternativa_texto

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.

  1. SeleccioneConección de datos enExplorador de servidores y haga clic derecho.
  2. SeleccioneAgregar conexión del menú. Seleccionando la opción Agregar conexión

todo:imagen_alternativa_texto

Se muestra el cuadro de diálogo Propiedades de vínculo de datos. El cuadro de diálogo Propiedades de enlace de datos

todo:imagen_alternativa_texto

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.

  1. Haga clic en elProveedor pestaña.
  2. SeleccioneMicrosoft Jet 4.0 Proveedor OLE DB desde elProveedores OLE DB lista.
  3. Hacer clicPróximo. Hacer clic en Siguiente después de seleccionar un proveedor OLE DB

todo:imagen_alternativa_texto

ÉlConexión se abre la página de pestañas.

  1. 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

todo:imagen_alternativa_texto

Paso 4: crear objetos de conexión de base de datos gráficamente

  1. Explore las tablas en la base de datos usando elExplorador de servidores. Solo hay una tabla, Productos.
  2. 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

todo:imagen_alternativa_texto

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

todo:imagen_alternativa_texto

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

todo:imagen_alternativa_texto

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.

  1. SeleccioneoleDbDataAdaper1 y haga clic derecho.
  2. SeleccioneGenerar conjunto de datos opción del menú. Seleccionando la opción Generar conjunto de datos

todo:imagen_alternativa_texto

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.

  1. Selecciona elAgregar este conjunto de datos al diseñador opción.
  2. Hacer clicDE ACUERDO. Al hacer clic en el botón Aceptar para generar DataSet

todo:imagen_alternativa_texto

Se agrega un objeto dataSet11 al diseñador. DataSet generado y agregado al diseñador

todo:imagen_alternativa_texto

Paso 6: Usar el Diseñador de hojas de trabajo

Ahora, es hora de abrir el secreto.

  1. Seleccione el control GridWeb y haga clic con el botón derecho.
  2. SeleccioneDiseñador de hojas de trabajo opción del menú.

Selección de la opción Diseñador de hojas de trabajo

todo:imagen_alternativa_texto

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

todo:imagen_alternativa_texto

El cuadro de diálogo contiene varias propiedades que se pueden configurar para vincular Sheet1 a cualquier tabla de la base de datos.

  1. Selecciona elFuente de datos propiedad. El objeto dataSet11 generado en el paso anterior aparece en el menú.
  2. Seleccione dataSet11.
  3. Haga clic en elmiembro de datos propiedad. Worksheets Designer muestra automáticamente una lista de tablas en dataSet11. Solo hay una tabla, Productos.
  4. Seleccione la tabla Productos. Configuración de las propiedades DataSource y DataMember

todo:imagen_alternativa_texto

  1. Compruebe elBindColumns propiedad. Hacer clic en la propiedad BindColumns

todo:imagen_alternativa_texto

Al hacer clic en elBindColumns La propiedad abre el editor de la colección BindColumn. El editor de la colección BindColumn

todo:imagen_alternativa_texto

En BindColumn Collection Editor, todas las columnas delproductos se agregan automáticamente a la colección BindColumns.

  1. 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

todo:imagen_alternativa_texto

  1. Después de hacer los cambios, haga clic enDE ACUERDO.
  2. 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

todo:imagen_alternativa_texto

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.

  1. 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
  1. Verifique el código agregado al controlador de eventos Page_Load. Código agregado al controlador de eventos Page_Load

todo:imagen_alternativa_texto

Paso 8: Ejecución de la aplicación

Compile y ejecute la aplicación: presioneCtrl+F5 o haga clicComenzar. Ejecutando la aplicación

todo:imagen_alternativa_texto

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

todo:imagen_alternativa_texto

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

todo:imagen_alternativa_texto

Aquí, la celda seleccionada contiene el**** validación, lo que significa que los usuarios solo pueden ingresar valores enteros en él. Si introducen otro valor, se produce un error de validación. Es más,**** muestra que se debe enviar el ID de producto de valor.

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ú

todo:imagen_alternativa_texto

La fila se eliminaría instantáneamente. Datos de cuadrícula (después de eliminar una fila)

todo:imagen_alternativa_texto

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

  1. Para agregar una fila, haga clic derecho en una celda y seleccioneAñadir fila. Seleccionar la opción Agregar fila del menú

todo:imagen_alternativa_texto

Se agrega una nueva fila a la hoja al final de otras filas. Nueva fila agregada a Grid

todo:imagen_alternativa_texto

A la izquierda de la nueva fila hay un asterisco circle , indicando que la fila es nueva.

  1. Agregue valores a la nueva fila.
  2. Hacer clicAhorrar oEnviar para confirmar el cambio. Guardar cambios en los datos haciendo clic en Guardar botón

todo:imagen_alternativa_texto

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.

  1. Vuelva a Visual Studio.NET.
  2. 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

todo:imagen_alternativa_texto

  1. Hacer clicLa lista desplegable y seleccioneMoneda4 de la lista. La propiedad NumberType cambió a Moneda4

todo:imagen_alternativa_texto

  1. 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

todo:imagen_alternativa_texto

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.

  1. Abre elPropiedades panel y seleccione el evento SaveCommand del control GridWeb de la lista. Seleccionando el evento SaveCommand de GridWeb

todo:imagen_alternativa_texto

  1. Haga doble clic en elGuardarComando y VS.NET crea el controlador de eventos GridWeb1_SaveCommand.
  2. 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

todo:imagen_alternativa_texto

Guarde los cambios en la base de datos utilizando elAhorrar botón ahora definitivamente los salva.

Conclusión