Share via


Modelos de controles servidores web ASP.NET

A maioria dos controles de servidor Web têm um padrão de aparência e layout que você pode manipular, definindo propriedades ou usando estilos.Alguns controles de servidor Web também permitem que sejam personalizados suas aparências usando modelos.

Um modelo é um conjunto de elementos HTML e controles que compõem o layout de uma parte específica de um controle.Por exemplo, no controle de servidor Web DataList você pode usar uma combinação de elementos HTML e controles para criar o layout de cada linha da lista.Da mesma forma, o controle de servidor Web GridView possui um padrão para procurar por linhas de grade.Entretanto, você pode personalizar a grade definindo modelos diferentes para colunas individuais.

Observação:

Modelos diferem dos estilos.Um modelo define o conteúdo de uma seção de um controle — por exemplo, o conteúdo de uma linha no controle DataList.Estilos especificam a aparência dos elementos, como cor, fonte e assim por diante.Estilos podem aplicar para o controle como um todo (por exemplo, para definir a fonte para o controle GridView) bem como para itens de modelo.

Modelos consistem de HTML e controles servidores incorporados.Quando o controle é executado na página da Web do ASP.NET, a estrutura do controle processa o conteúdo do modelo no lugar do padrão HTML para o controle.

Os modelos suportam controles?

Nem todos os controles servidores da Web suportam modelos.A maior parte dos modelos dão suporte para controles complexos.Isso inclui os controles GridView, DataList e Repeater, FormView, DetailsView, Login, e outros controles.

Cada controle suporta um conjunto ligeiramente diferente de modelos que especificam layout para partes diferentes do controle, como o cabeçalho, rodapé, item e item selecionado.Você pode especificar um modelo para qualquer ou todos esses itens, dependendo quais você deseja personalizar.No controle GridView, você pode especificar modelos para colunas (em vez linhas).

A tabela a seguir resume os controles do servidor Web que oferecem suporte a modelos.

Controle

Modelos

ChangePassword

  • Modelo para mudança de senha

  • SuccessTemplate

CompleteWizardStep

  • ContentTemplate

  • CustomNavigationTemplate

CreateUserWizard

  • HeaderTemplate

  • SideBarTemplate

  • StartNavigationTemplate

  • StepNavigation

  • FinishNavigation

CreateUserWizardStep

  • ContentTemplate

  • CustomNavigationTemplate

DataList

  • HeaderTemplate

  • FooterTemplate

  • ItemTemplate

  • AlternatingItemTemplate

  • SeparatorTemplate

  • SelectedItemTemplate

  • EditItemTemplate

DetailsView

  • HeaderTemplate

  • FooterTemplate

  • PagerTemplate

  • EmptyDataTemplate

FormView

  • ItemTemplate

  • EditItemTemplate

  • InsertItemTemplate

  • HeaderTemplate

  • FooterTemplate

  • PagerTemplate

  • EmptyDataTemplate

GridView

  • PagerTemplate

  • EmptyDataTemplate

ListView

  • LayoutTemplate

  • ItemTemplate

  • ItemSeparatorTemplate

  • GroupTemplate

  • GroupSeparatorTemplate

  • EmptyItemTemplate

  • EmptyDataTemplate

  • SelectedItemTemplate

  • AlternatingItemTemplate

  • EditItemTemplate

  • InsertItemTemplate

Login

  • LayoutTemplate

LoginView

  • AnonymousTemplate

  • LoggedInTemplate

Menu

  • DynamicTemplate

  • StaticTemplate

PasswordRecovery

  • QuestionTemplate

  • SuccessTemplate

  • UserNameTemplate

Repeater

  • HeaderTemplate

  • FooterTemplate

  • ItemTemplate

  • AlternatingItemTemplate

  • SeparatorTemplate

SiteMapPath

  • CurrentNodeTemplate

  • RootNodeTemplate

  • NodeTemplate

  • PathSeparatorTemplate

TemplatePagerField

  • PageTemplate

UpdatePanel

  • ContentTemplate

UpdateProgress

  • ProgressTemplate

Wizard

  • FinishNavigationTemplate

  • HeaderTemplate

  • StartNavigationTemplate

  • StepNavigationTemplate

  • SideBarTemplate

Criando modelos

Você pode criar modelos diretamente no arquivo .aspx.Os modelos são criados como declarações XML.O exemplo a seguir mostra como você pode exibir uma lista de nomes de funcionários, números de telefone e endereços de e-mail endereços usando modelos no controle DataList.O layout das informações do funcionário é especificado em ItemTemplate usando controles ligados a dados.

Observação:

Se você estiver usando um criador visual, como Visual Studio 2005, você pode utilizar tipicamente uma ferramenta visual para criar e editar modelos.Para obter mais informações, consulte Como: Criar controle de servidor Web Templates Using the Designer.

<asp:datalist id="DataList1" >
  <HeaderTemplate>
  Employee List
  </HeaderTemplate>
  <ItemTemplate>
    <asp:label id="Label1"  
        Text='<%# DataBinder.Eval(Container, "DataItem.EmployeeName")%>'></asp:label>
    <asp:label id="Label2"  
        Text='<%# DataBinder.Eval(Container, "DataItem.PhoneNumber")%>'></asp:label>
    <asp:Hyperlink id="Hyperlink1"  
        Text='<%# DataBinder.Eval(Container, "DataItem.Email") %>'
        NavigateURL='<%# DataBinder.Eval(Container, "DataItem.Link") %>'>
    </asp:Hyperlink>
  </ItemTemplate>
</asp:datalist>
<asp:datalist id="DataList1" >
  <HeaderTemplate>
  Employee List
  </HeaderTemplate>
  <ItemTemplate>
    <asp:label id="Label1"  
        Text='<%# DataBinder.Eval(Container, "DataItem.EmployeeName")%>'></asp:label>
    <asp:label id="Label2"  
        Text='<%# DataBinder.Eval(Container, "DataItem.PhoneNumber")%>'></asp:label>
    <asp:Hyperlink id="Hyperlink1"  
        Text='<%# DataBinder.Eval(Container, "DataItem.Email") %>'
        NavigateURL='<%# DataBinder.Eval(Container, "DataItem.Link") %>'>
    </asp:Hyperlink>
  </ItemTemplate>
</asp:datalist>

Trabalhando com modelos

Um controle modelado cria uma instância do seu conteúdo do modelo somente sob demanda.Isso significa que instância dos controles no modelo não pode ser criada quando ocorrer o evento de carregamento de página.Esse comportamento pode afetar como um controle dentro de um modelo pode ser usado; você não pode assumir que uma instância de controle dentro de um modelo é criada quando a página é carregada.

sistema autônomo modelos aninhados, bem sistema autônomo arquivos mestres aninhados não são processados na visualização Design do Visual Studio 2005 ou do Visual Web Developer.O aninhamento corretamente é processado em um navegador da Web, no entanto.

Consulte também

Conceitos

Controle de Servidor Web do ASP.NET e Estilos CSS

Outros recursos

Acessando Dados com o ASP.NET