O controle FormView do ASP.NET 2.0 é semelhante ao controle DetailsView, pois exibe convenientemente registros individuais de uma fonte de dados de back-end. Este artigo discutirá a sintaxe e a aplicação desse controle.
Personalização
Embora ambos os controles exibam um registro por vez, a principal diferença entre DetailsView e FormView é que FormView utiliza modelos definidos pelo usuário. DetailsView usa campos de linha. O controle FormView não predefine o layout dos dados; em vez disso, você cria um modelo contendo o controle para exibir campos individuais do registro; O modelo contém os formatos, controles e expressões de ligação usados para criar o formulário.
Você pode controlar a exibição de registros de dados de três formas: editar, visualizar e adicionar um novo registro. Além disso, você pode incluir e formatar elementos de cabeçalho e rodapé. Você também pode aproveitar qualquer um dos controles ASP.NET disponíveis em diversas partes do controle FormView.
A sintaxe para
declarar e usar uma instância de controle FormView é muito semelhante à declaração e usar uma instância de controle DetailsView. A principal diferença entre eles é que, por não haver configurações padrão a serem utilizadas, é necessário incluir o formato e o modelo para exibição dos dados no controle FormView. A Listagem A mostra parte da sintaxe para abrir uma tag de elemento FormView.
Você deve ter notado que muitos atributos correspondem a elementos de tabelas HTML, como títulos e bordas. Isso mostra que o ASP.NET usa tabelas HTML para renderizar o controle FormView.
Você pode visualizar uma lista mais abrangente de propriedades de controle do FormView online no site da Microsoft. A tabela abaixo lista algumas propriedades importantes a serem observadas.
·AllowPaging: Um valor booleano que indica se o usuário pode paginar os registros na fonte de dados especificada. Se definido como verdadeiro, exibe o sistema numérico paginado padrão (de 1 ao número de registros) na parte inferior dos registros exibidos. Os links de paginação podem ser personalizados por meio de várias propriedades de paginação.
·DataKeyNames: Campos chave da fonte de dados.
·DataSourceID: utilizado para transplantar o ID do elemento da fonte de dados do controle FormView. Se estiver usando o SQL Server, isso corresponde ao ID atribuído ao elemento SqlDataSource.
·DefaultMode: Permite especificar o comportamento padrão do controle. Ou seja, como ele é exibido inicialmente quando o usuário o acessa. Os valores possíveis incluem: ReadOnly, Insert e Edit.
·EmptyDataText: O texto exibido quando um valor de dados vazio é encontrado.
Quando você declara um controle FormView, seu conteúdo também deve ser formatado adequadamente. Seus dados são exibidos por meio de templates. O controle FormView utiliza principalmente cinco templates:
·ItemTemplate: Controla a exibição quando o usuário visualiza os dados.
·EditItemTemplate: Determina o formato e exibição dos elementos de dados quando os usuários editam os registros. Neste modelo, você usará outros controles, como elementos TextBox, para permitir que os usuários editem valores.
·InsertItemTemplate: Semelhante à edição de um registro, este modelo controla a exibição de campos que permitem ao usuário adicionar um novo registro na fonte de dados backend. À medida que novos valores são inseridos, o usuário deve ter permissão para inserir texto livremente ou restringir-se a determinados valores, dependendo dos requisitos dos dados.
·FooterTemplate: Determina o conteúdo exibido no rodapé da tabela de controle do FormView, se houver.
·HeaderTemplate: Determina o conteúdo exibido na parte do cabeçalho da tabela de controle do FormView, se houver.
Esses modelos permitem controlar a exibição e o comportamento dos dados vinculados a um controle FormView. Por exemplo, o formulário web ASP.NET na Listagem B se conecta a um banco de dados Northwind padrão e permite que os usuários visualizem, editem, excluam e adicionem novos registros de funcionários por meio dos campos nome, sobrenome, data de contratação e número de telefone residencial.
Ele usa o controle TextField para exibir os dados que estão sendo editados ou adicionados, bem como os valores que são exibidos apenas para revisão. ItemTemplate usa CSS para formatar tabelas, enquanto InsertTemplate usa estilos HTML para formatação. O método a ser usado é decidido pelo desenvolvedor.
Nota: ASP.NET usa controles de botão para adicionar, editar, excluir e salvar registros.
No controle Button, o valor CommandName de New converte o registro no modo de inserção e carrega o modelo InsertItemTemplate, que permite ao usuário inserir um novo valor de registro. Você pode usar o valor Edit CommandName para adicionar um novo botão ao ItemTemplate para colocar o controle FormView no modo de edição.
Você pode adicionar um botão com um valor CommnadName Excluir ao modelo ItemTemplate para permitir que o usuário exclua o registro atual da fonte de dados. O CommnadName do Update salva os dados, enquanto o Cancel encerra a operação.
É incrível como é fácil para
os desenvolvedores controlar
muitos dos novos recursos do ASP.NET 2.0.FormView expande a funcionalidade simples do DetailsView, permitindo controlar facilmente o conteúdo de exibição a ser formatado conforme necessário. Este novo controle oferece outra opção para entregar suas soluções.