El control FormView de ASP.NET 2.0 es similar al control DetailsView en que muestra convenientemente registros individuales de una fuente de datos de back-end. Este artículo discutirá la sintaxis y la aplicación de este control.
Personalización
Aunque ambos controles muestran un registro a la vez, la diferencia clave entre DetailsView y FormView es que FormView utiliza plantillas definidas por el usuario. DetailsView utiliza campos de fila; El control FormView no predefine el diseño de los datos; en cambio, usted crea una plantilla que contiene el control para mostrar campos individuales del registro. La plantilla contiene los formatos, controles y expresiones vinculantes utilizados para crear el formulario.
Puede controlar la visualización de registros de datos de tres formas: editar, ver y agregar un nuevo registro. Además, puede incluir y dar formato a elementos de encabezado y pie de página. También puede aprovechar cualquiera de los controles ASP.NET disponibles en varias partes del control FormView.
La sintaxis para
declarar y usar una instancia de control FormView es muy similar a declarar y usar una instancia de control DetailsView. La principal diferencia entre ellos es que, debido a que no hay configuraciones predeterminadas para usar, debes incluir el formato y la plantilla para mostrar los datos en el control FormView. El Listado A muestra parte de la sintaxis para abrir una etiqueta de elemento FormView.
Quizás hayas notado que muchos atributos corresponden a elementos de una tabla HTML, como títulos y bordes. Esto muestra que ASP.NET usa tablas HTML para representar el control FormView.
Puede ver una lista más completa de las propiedades del control FormView en línea a través del sitio web de Microsoft. La siguiente tabla enumera algunas propiedades importantes a tener en cuenta.
·AllowPaging: un valor booleano que indica si el usuario puede paginar los registros en la fuente de datos especificada. Si se establece en verdadero, muestra el sistema numérico paginado predeterminado (de 1 al número de registros) en la parte inferior de los registros mostrados. Los enlaces de paginación se pueden personalizar a través de varias propiedades de paginación.
·DataKeyNames: Campos clave de la fuente de datos.
·DataSourceID: se utiliza para trasplantar el ID del elemento de origen de datos del control FormView. Si utiliza SQL Server, esto corresponde al ID asignado al elemento SqlDataSource.
·DefaultMode: Le permite especificar el comportamiento predeterminado del control. Es decir, cómo se muestra inicialmente cuando el usuario accede a él. Los valores posibles incluyen: Sólo lectura, Insertar y Editar.
·EmptyDataText: El texto que se muestra cuando se encuentra un valor de datos vacío.
Cuando declara un control FormView, su contenido también debe tener el formato correspondiente. Sus datos se muestran a través de plantillas. El control FormView utiliza principalmente cinco plantillas:
·ItemTemplate: controla la visualización cuando los usuarios ven los datos.
·EditItemTemplate: Determina el formato y visualización de los elementos de datos cuando los usuarios editan registros. Dentro de esta plantilla, utilizará otros controles, como elementos TextBox, para permitir a los usuarios editar valores.
·InsertItemTemplate: similar a editar un registro, esta plantilla controla la visualización de campos que permiten al usuario agregar un nuevo registro en la fuente de datos backend. A medida que se ingresan nuevos valores, se debe permitir al usuario ingresar texto libremente o restringirlo a ciertos valores, según los requisitos de los datos.
·FooterTemplate: Determina el contenido que se muestra en la parte del pie de página de la tabla de control FormView, si corresponde.
·HeaderTemplate: Determina el contenido que se muestra en la parte del encabezado de la tabla de control FormView, si corresponde.
Estas plantillas le permiten controlar la visualización y el comportamiento de los datos vinculados a un control FormView. Por ejemplo, el formulario web ASP.NET del Listado B se conecta a una base de datos estándar de Northwind y permite a los usuarios ver, editar, eliminar y agregar nuevos registros de empleados mediante los campos de nombre, apellido, fecha de contratación y número de teléfono residencial.
Utiliza el control TextField para mostrar los datos que se están editando o agregando, así como los valores que se muestran solo para su revisión. ItemTemplate usa CSS para formatear tablas, mientras que InsertTemplate usa estilos HTML para formatear. El método a utilizar lo decide el desarrollador.
Nota: ASP.NET utiliza controles de botón para agregar, editar, eliminar y guardar registros.
En el control Botón, el valor CommandName de Nuevo convierte el registro al modo de inserción y carga la plantilla InsertItemTemplate, que permite al usuario ingresar un nuevo valor de registro. Puede usar el valor Editar CommandName para agregar un nuevo botón a ItemTemplate para poner el control FormView en modo de edición.
Puede agregar un botón con un valor CommnadName de Eliminar a la plantilla ItemTemplate para permitir al usuario eliminar el registro actual de la fuente de datos. CommnadName de Actualización guarda los datos, mientras que Cancelar finaliza la operación.
Es sorprendente lo fácil que resulta para
los desarrolladores controlar
muchas de las nuevas funciones de ASP.NET 2.0.FormView amplía la funcionalidad simple de DetailsView, permitiéndole controlar fácilmente el contenido de la pantalla que se va a formatear según sea necesario. Este nuevo control le brinda otra opción para entregar sus soluciones.