Tutorial: Enlace de datos simple en un proyecto en el nivel del documento
En este tutorial se muestran los fundamentos de enlace de datos en un proyecto en el nivel del documento. Un único campo de datos de una base de datos de SQL Server se enlaza a un rango con nombre en Microsoft Office Excel. En el tutorial también se muestra cómo agregar controles que permiten desplazarse por todos los registros de la tabla.
Se aplica a: la información de este tema se aplica a los proyectos de nivel de documento para Excel 2007 y Excel 2010. Para obtener más información, vea Características disponibles por aplicación y tipo de proyecto de Office.
En este tutorial se muestran las tareas siguientes:
Crear un origen de datos para un proyecto de Excel.
Agregar controles a una hoja de cálculo.
Desplazarse por los registros de una bases de datos.
Nota
Es posible que su equipo muestre nombres o ubicaciones diferentes para algunos de los elementos de la interfaz de usuario de Visual Studio incluidos en las instrucciones siguientes. La edición de Visual Studio que se tenga y la configuración que se utilice determinan estos elementos. Para obtener más información, vea Valores de configuración de Visual Studio.
Requisitos previos
Necesita los componentes siguientes para completar este tutorial:
-
Una edición de Visual Studio 2010 que incluye las herramientas para desarrolladores de Microsoft Office. Para obtener más información, vea [Configurar un equipo para desarrollar soluciones de Office](bb398242\(v=vs.100\).md).
Excel 2007 o Excel 2010.
Acceso a un servidor con la base de datos de ejemplo Northwind de SQL Server.
Permisos de lectura y escritura en la base de datos de SQL Server.
Crear un proyecto nuevo
En este paso, creará un proyecto de libro de Excel.
Para crear un nuevo proyecto
- Cree un proyecto de libro de Excel con el nombre My Simple Data Binding mediante Visual Basic o C#. Asegúrese de que esté seleccionada la opción Crear un nuevo documento. Para obtener más información, consulte Cómo: Crear proyectos de Office en Visual Studio.
Visual Studio abre el nuevo libro de Excel en el diseñador y agrega el proyecto My Simple Data Binding al Explorador de soluciones.
Crear el origen de datos
Utilice la ventana Orígenes de datos para agregar al proyecto un conjunto de datos con tipo.
Para crear el origen de datos
Si la ventana Orígenes de datos no está visible, haga clic en Mostrar orígenes de datos en el menú Datos.
Nota
Si la opción Mostrar orígenes de datos no está disponible, haga clic en el libro de Excel y compruébelo de nuevo.
Haga clic en Agregar nuevo origen de datos para iniciar el Asistente para configuración de orígenes de datos.
Seleccione Base de datos y, a continuación, haga clic en Siguiente.
Seleccione una conexión de datos con la base de datos de ejemplo Northwind de SQL Server o agregue una nueva conexión mediante el botón Nueva conexión.
Cuando haya seleccionado o creado una conexión, haga clic en Siguiente.
Si estuviera activada, desactive la opción de guardar la conexión y, a continuación, haga clic en Siguiente.
Expanda el nodo Tablas en la ventana Objetos de base de datos.
Active la casilla que se encuentra junto a la tabla Customers.
Haga clic en Finalizar.
El asistente agrega la tabla Customers a la ventana Orígenes de datos. También agrega al proyecto un conjunto de datos con tipo, visible en el Explorador de soluciones.
Agregar controles a la hoja de cálculo
Para este tutorial, necesita dos rangos con nombre y cuatro botones en la primera hoja de cálculo. En primer lugar, agregue los dos rangos con nombre de la ventana Orígenes de datos para que se enlacen al origen de datos de forma automática. A continuación, agregue los botones del Cuadro de herramientas.
Para agregar dos rangos con nombre
Compruebe que el libro My Simple Data Binding.xls está abierto en el diseñador de Visual Studio y que se muestra la hoja Sheet1.
Abra la ventana Orígenes de datos y expanda el nodo Customers.
Seleccione la columna CompanyName y, a continuación, haga clic en la flecha de lista desplegable que aparece.
Seleccione NamedRange en la lista desplegable y, a continuación, arrastre la columna CompanyName hacia la celda A1.
En la celda A1 se crea un control NamedRange denominado companyNameNamedRange. Al mismo tiempo, se agregan al proyecto un control BindingSource denominado customersBindingSource, un adaptador de tablas y una instancia de la clase DataSet. El control se enlaza a BindingSource, que, a su vez, se enlaza a la instancia de DataSet.
Seleccione la columna CustomerID en la ventana Orígenes de datos y, a continuación, haga clic en la flecha de lista desplegable que aparece.
Seleccione NamedRange en la lista desplegable y, a continuación, arrastre la columna CustomerID a la celda B1.
En la celda B1 se crea otro control NamedRange denominado customerIDNamedRange y se enlaza al control BindingSource.
Para agregar cuatro botones
Desde la ficha Controles comunes del Cuadro de herramientas, agregue un control Button a la celda A3 de la hoja de cálculo.
Este botón se denominará Button1.
Agregue tres botones más a las celdas siguientes en el orden que se indica para que los nombres sean los que se muestran a continuación:
Celda
(Nombre)
B3
Button2
C3
Button3
D3
Button4
El paso siguiente consiste en agregar texto a los botones y en agregar controladores de eventos en C#.
Inicializar los controles
Establezca el texto del botón y agregue controladores de eventos durante el evento Startup.
Para inicializar los controles
En el Explorador de soluciones, haga clic con el botón secundario del mouse en Sheet1.vb o Sheet1.cs y, a continuación, haga clic en Ver código en el menú contextual.
Agregue el código siguiente al método Sheet1_Startup para establecer el texto de cada botón.
With Me .Button1.Text = "|<" .Button2.Text = "<" .Button3.Text = ">" .Button4.Text = ">|" End With
this.button1.Text = "|<"; this.button2.Text = "<"; this.button3.Text = ">"; this.button4.Text = ">|";
En C# únicamente, agregue controladores de eventos para los eventos Click de los botones al método Sheet1_Startup.
this.button1.Click += new EventHandler(button1_Click); this.button2.Click += new EventHandler(button2_Click); this.button3.Click += new EventHandler(button3_Click); this.button4.Click += new EventHandler(button4_Click);
Ahora agregue el código para controlar los eventos Click de los botones de forma que el usuario pueda desplazarse por los registros.
Agregar código para habilitar el desplazamiento por los registros
Agregue el código al controlador del evento Click de cada botón para desplazarse por los registros.
Para desplazarse al primer registro
Agregue un controlador de eventos para el evento Click del botón Button1 y agregue el código siguiente para desplazarse al primer registro:
Private Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) _ Handles Button1.Click Me.CustomersBindingSource.MoveFirst() End Sub
private void button1_Click(object sender, System.EventArgs e) { this.customersBindingSource.MoveFirst(); }
Para desplazarse al registro anterior
Agregue un controlador de eventos para el evento Click del botón Button2 y agregue el código siguiente para retroceder una posición:
Private Sub Button2_Click(ByVal sender As Object, ByVal e As System.EventArgs) _ Handles Button2.Click Me.CustomersBindingSource.MovePrevious() End Sub
private void button2_Click(object sender, System.EventArgs e) { this.customersBindingSource.MovePrevious(); }
Para desplazarse al registro siguiente
Agregue un controlador de eventos para el evento Click del botón Button3 y agregue el código siguiente para avanzar una posición:
Private Sub Button3_Click(ByVal sender As Object, ByVal e As System.EventArgs) _ Handles Button3.Click Me.CustomersBindingSource.MoveNext() End Sub
private void button3_Click(object sender, System.EventArgs e) { this.customersBindingSource.MoveNext(); }
Para desplazarse al último registro
Agregue un controlador de eventos para el evento Click del botón Button4 y agregue el código siguiente para desplazarse al último registro:
Private Sub Button4_Click(ByVal sender As Object, ByVal e As System.EventArgs) _ Handles Button4.Click Me.CustomersBindingSource.MoveLast() End Sub
private void button4_Click(object sender, System.EventArgs e) { this.customersBindingSource.MoveLast(); }
Probar la aplicación
Ahora puede probar el libro para asegurarse de que puede desplazarse por los registros de la base de datos.
Para probar el libro
Presione F5 para ejecutar el proyecto.
Confirme que el primer registro aparece en las celdas A1 y B1.
Haga clic en el botón > (Button3) y confirme que el registro siguiente aparece en las celdas A1 y B1.
Haga clic en los otros botones de desplazamiento para confirmar que el registro cambia tal y como se espera.
Pasos siguientes
En este tutorial se muestran los aspectos básicos del enlace de un rango con nombre a un campo de una base de datos. Éstas son algunas de las tareas que pueden venir a continuación:
Almacene en memoria caché los datos para poder utilizarlos sin conexión. Para obtener más información, vea Cómo: Almacenar datos en la memoria caché para el uso sin conexión o en un servidor.
Enlazar celdas a varias columnas de una tabla, en lugar de a un campo. Para obtener más información, vea Tutorial: Enlace de datos complejo en un proyecto en el nivel del documento.
Utilizar un control BindingNavigator para desplazarse por los registros. Para obtener más información, vea Cómo: Explorar datos con el control BindingNavigator de formularios Windows Forms.
Vea también
Tareas
Tutorial: Enlace de datos complejo en un proyecto en el nivel del documento