Compartir a través de


Sintaxis de plantillas en línea para controles de servidor

Especifica qué contenido se incluirá, y cómo se definirá su organización y estilo, en los controles de servidor ASP.NET que admitan plantillas.

<templatename>
   Server control, data-binding syntax, other valid markup
</templatename>

Etiquetas de marcado

  • templatename
    Nombre de la plantilla del control de servidor ASP.NET.

Comentarios

Se pueden utilizar plantillas para definir la estructura y el estilo del contenido que aparece en los controles de servidor ASP.NET. La sintaxis de plantillas en línea constituye un método práctico de trabajar con plantillas, porque permite diseñar la distribución y el estilo del contenido de un control utilizando sintaxis declarativa sencilla en lugar de hacerlo mediante programación.

Muchos controles de servidor Web ASP.NET admiten plantillas, como es el caso de los controles Repeater, DataList, GridView, FormView, MultiView, LoginView y Menu, o controles de zona de elementos Web como WebPartZone y CatalogZone. Tenga en cuenta que sólo las plantillas que se definen específicamente para un control pueden declararse para ese control.

Los elementos de plantilla se deben declarar como elementos secundarios de los controles de servidor que los admiten. Un control de servidor puede contener varios elementos de plantilla y cada plantilla se utiliza para especificar las características de un contenido diferente del control. Por ejemplo, el control Repeater admite plantillas para especificar el diseño y la apariencia del contenido de una sección de encabezado, una sección de cuerpo o elemento y una sección de pie de página, así como plantillas especiales para controlar los estilos para alternar los elementos y los separadores entre los elementos. Para obtener información detallada, vea el ejemplo de código de este tema.

Para especificar cómo aparecerá el contenido en una plantilla, los elementos adicionales se declaran dentro de las etiquetas de plantilla. El marcado adicional puede estar compuesto de etiquetas HTML, controles ASP.NET y expresiones de servidor o bloques de código en línea. Para obtener más información sobre cómo utilizar plantillas en línea, vea Plantillas de controles de servidor web ASP.NET.

Puede definir sus propias plantillas cuando desarrolle controles de servidor personalizados. Para obtener más información sobre cómo desarrollar controles que definen y utilizan plantillas de estilo en línea, vea Cómo: Crear controles de usuario ASP.NET con plantillas.

Ejemplo

En el ejemplo de código siguiente se muestra cómo declarar las plantillas HeaderTemplate, AlternatingItemTemplate, ItemTemplate y FooterTemplate en un control de servidor Web Repeater. Cada una de estas plantillas está asociada a una propiedad de la clase Repeater.

<%@ Page Language="C#" %>
<html>
 <head>
    <script language="C#" runat="server">
       void Page_Load(Object Sender, EventArgs e) {
 
          if (!IsPostBack) {
             ArrayList values = new ArrayList();
 
             values.Add("Apple");
             values.Add("Orange");
             values.Add("Pear");
             values.Add("Banana");
             values.Add("Grape");
 
             Repeater1.DataSource = values;
             Repeater1.DataBind();
          }
       }
    </script>
 
 </head>
 <body>
 
    <h3><font face="Verdana">Repeater Example</font></h3>
 
    <form runat=server>
 
       <b>Repeater1:</b>
       <p>
         
       <asp:Repeater id=Repeater1 runat="server">
             
             
          <HeaderTemplate>
             <table border=1>
          </HeaderTemplate>
 
          <AlternatingItemTemplate>
             <tr>
                <td><b> <%# Container.DataItem %> </b> </td>
             </tr>
          </AlternatingItemTemplate>
 
          <ItemTemplate>
             <tr>
                <td> <%# Container.DataItem %> </td>
             </tr>
          </ItemTemplate>
 
          <FooterTemplate>
             </table>
          </FooterTemplate>
             
       </asp:Repeater>
       <p>
         
    </form>
 </body>
 </html>
<%@ Page Language="VB" %> 
<html>
<head>
<script language="VB" runat="server">

        Sub Page_Load(Sender As Object, e As EventArgs)
            
            If Not IsPostBack Then
                Dim values As New ArrayList()
                
                values.Add("Apple")
                values.Add("Orange")
                values.Add("Pear")
                values.Add("Banana")
                values.Add("Grape")
                
                Repeater1.DataSource = values
                Repeater1.DataBind()
            End If
        End Sub
</script>
 
 </head>
 <body>
 
    <h3><font face="Verdana">Repeater Example</font></h3>
 
    <form runat=server>
 
       <b>Repeater1:</b>
       <p>
         
       <asp:Repeater id=Repeater1 runat="server">
             
             
          <HeaderTemplate>
             <table border=1>
          </HeaderTemplate>
 
          <AlternatingItemTemplate>
             <tr>
                <td><b> <%# Container.DataItem %> </b> </td>
             </tr>
          </AlternatingItemTemplate>
 
          <ItemTemplate>
             <tr>
                <td> <%# Container.DataItem %> </td>
             </tr>
          </ItemTemplate>
 
          <FooterTemplate>
             </table>
          </FooterTemplate>
             
       </asp:Repeater>
       <p>
         
    </form>
 </body>
 </html>    

Vea también

Tareas

Cómo: Crear controles de usuario ASP.NET con plantillas

Referencia

Sintaxis de controles de servidor personalizados

Conceptos

Información general sobre sintaxis de páginas web ASP.NET