jueves, 24 de marzo de 2011

Ejercicio. Insertar controles de navegación


Partiendo de tu proyecto del ejercicio anterior o de este proyecto ya resuelto, añade una barra de navegación que permita moverse por los registros de la tabla. Para ello, inserta utilizando el IDE de Sharp Develop un control de tipo BindingNavigator. Para mayor claridad del código, llámale Navegador. El navegador ya implementa toda la funcionalidad necesaria; lo único que tienes que hacer es asociarlo al objeto BindingSource vinculado a los datos. Es decir añade el código marcado en rojo:


ds=new DataSet();
OleDbCommand cmd = new OleDbCommand(
"Select Id, Nombre, Edad from Persona",con);
da=new OleDbDataAdapter(cmd);
cb = new OleDbCommandBuilder(da);
da.Fill(ds);
bs=new BindingSource();
bs.DataSource=ds.Tables[0];
dgPersona.DataSource=bs;
Navegador.BindingSource=bs;


Si haces clic sobre el objeto BindingNavigator en el diseñador de formularios aparecerá una flecha negra en la esquina superior derecha del control desde la que puedes acceder a la opción Dock (anclar). Selecciona Button para colocar el navegador en la parte inferior de la ventana tal y como se muestra en la figura, de manera que no se solape con los controles ya dispuestos sobre el formulario principal.

*************************************


Ahora imagina que no dispusieses del objeto BindingNavigator y tuvieses que conseguir la misma funcionalidad de desplazamiento con botones y una etiqueta que muestre en qué registro nos encontramos del total. Descarga el siguiente proyecto de codeproject.com en el que se implementa este aspecto para una base de datos SQL Server. Aunque no lo podrás ejecutar directamente sí se representa en el diseñador de formularios, lo que te permitirá rastrear los métodos asociados a los eventos de clic de cada botón. En realidad, el proceso resulta tan simple como invocar a los métodos moveFirst(), moveLast(), moveNext() y movePrevious() del objeto BindingSource con alguna lógica adicional. Haz lo mismo sobre tu proyecto.

No hay comentarios:

Publicar un comentario