Export (0) Print
Expand All
Expand Minimize
This topic has not yet been rated - Rate this topic

RepeatLayout Enumeration

Specifies the layout of items in a list control.

Namespace:  System.Web.UI.WebControls
Assembly:  System.Web (in System.Web.dll)
public enum RepeatLayout
Member nameDescription
FlowItems are displayed without a table structure. Rendered markup consists of a span element and items are separated by br elements.

The following example shows markup that is rendered for a CheckBoxList control whose RepeatLayout property is set to Flow.

<span id="ctl00_MainContent_CheckBoxList1">
  <input id="ctl00_MainContent_CheckBoxList1_0" type="checkbox" 
    name="ctl00$MainContent$CheckBoxList1$0" value="Item 1" />
  <label for="ctl00_MainContent_CheckBoxList1_0">Item 1</label>
  <br />
  <input id="ctl00_MainContent_CheckBoxList1_1" type="checkbox"
    name="ctl00$MainContent$CheckBoxList1$1" value="Item 2"/>
  <label for="ctl00_MainContent_CheckBoxList1_1">Item 2</label>
  <br />
  <input id="ctl00_MainContent_CheckBoxList1_2" type="checkbox"
    name="ctl00$MainContent$CheckBoxList1$2" value="Item 2" />
  <label for="ctl00_MainContent_CheckBoxList1_2">Item 2</label>
</span>
OrderedListItems are displayed without a table structure. Rendered markup consists of an ol element that contains li elements.

The following example shows markup that is rendered for a CheckBoxList control whose RepeatLayout property is set to OrderedList.

<ol id="ctl00_MainContent_CheckBoxList3">
  <li>
    <input id="ctl00_MainContent_CheckBoxList3_0" type="checkbox"
      name="ctl00$MainContent$CheckBoxList3$0" value="Item 1" />
    <label for="ctl00_MainContent_CheckBoxList3_0">Item 1</label>
  </li>
  <li>
    <input id="ctl00_MainContent_CheckBoxList3_1" type="checkbox"
      name="ctl00$MainContent$CheckBoxList3$1" value="Item 2" />
    <label for="ctl00_MainContent_CheckBoxList3_1">Item 2</label>
  </li>
  <li>
    <input id="ctl00_MainContent_CheckBoxList3_2" type="checkbox"
      name="ctl00$MainContent$CheckBoxList3$2" value="Item 2" />
    <label for="ctl00_MainContent_CheckBoxList3_2">Item 2</label>
  </li>
</ol>
NoteNote

This field is new as of ASP.NET 4 and is a valid option only for the CheckBoxList and RadioButtonList controls.

TableItems are displayed in a table.

The following example shows markup that is rendered for a CheckBoxList control whose RepeatLayout property is set to Table.

NoteNote

This option causes the control to render HTML that might not conform to accessibility standards. For more information, see Accessibility in Visual Studio and ASP.NET.

<table id="ctl00_MainContent_CheckBoxList2">
  <tr>
    <td>
      <input id="ctl00_MainContent_CheckBoxList2_0" type="checkbox"
        name="ctl00$MainContent$CheckBoxList2$0" value="Item 1" />
      <label for="ctl00_MainContent_CheckBoxList2_0">Item 1</label>
    </td>
  </tr>
  <tr>
    <td>
      <input id="ctl00_MainContent_CheckBoxList2_1" type="checkbox"
        name="ctl00$MainContent$CheckBoxList2$1" value="Item 2" />
      <label for="ctl00_MainContent_CheckBoxList2_1">Item 2</label>
    </td>
  </tr>
  <tr>
    <td>
      <input id="ctl00_MainContent_CheckBoxList2_2" type="checkbox"
        name="ctl00$MainContent$CheckBoxList2$2" value="Item 3" />
      <label for="ctl00_MainContent_CheckBoxList2_2">Item 3</label>
    </td>
  </tr>
</table>
UnorderedListItems are displayed without a table structure. Rendered markup consists of a ul element that contains li elements.

The following example shows markup that is rendered for a CheckBoxList control whose RepeatLayout property is set to UnorderedList.

<ul id="ctl00_MainContent_CheckBoxList4">
  <li>
    <input id="ctl00_MainContent_CheckBoxList4_0" type="checkbox"
      name="ctl00$MainContent$CheckBoxList4$0" value="Item 1" />
    <label for="ctl00_MainContent_CheckBoxList4_0">Item 1</label>
  </li>
  <li>
    <input id="ctl00_MainContent_CheckBoxList4_1" type="checkbox"
      name="ctl00$MainContent$CheckBoxList4$1" value="Item 2" />
    <label for="ctl00_MainContent_CheckBoxList4_1">Item 2</label>
  </li>
  <li>
    <input id="ctl00_MainContent_CheckBoxList4_2" type="checkbox"
      name="ctl00$MainContent$CheckBoxList4$2" value="Item 2" />
    <label for="ctl00_MainContent_CheckBoxList4_2">Item 2</label>
  </li>
</ul>
NoteNote

This field is new as of ASP.NET 4 and is a valid option only for the CheckBoxList and RadioButtonList controls.

The RepeatLayout enumeration represents the different layout options for a list control.


<%@ Page Language="C#" AutoEventWireup="True" %>
<%@ Import Namespace="System.Data" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
   <script runat="server">

      ICollection CreateDataSource() 
      {

         // Create sample data for the DataList control.
         DataTable dt = new DataTable();
         DataRow dr;

         // Define the columns of the table.
         dt.Columns.Add(new DataColumn("IntegerValue", typeof(Int32)));
         dt.Columns.Add(new DataColumn("StringValue", typeof(String)));
         dt.Columns.Add(new DataColumn("CurrencyValue", typeof(double)));
         dt.Columns.Add(new DataColumn("ImageValue", typeof(String)));

         // Populate the table with sample values.
         for (int i = 0; i < 9; i++) 
         {
            dr = dt.NewRow();

            dr[0] = i;
            dr[1] = "Description for item " + i.ToString();
            dr[2] = 1.23 * (i + 1);
            dr[3] = "Image" + i.ToString() + ".jpg";

            dt.Rows.Add(dr);
         }

         DataView dv = new DataView(dt);
         return dv;
      }


      void Page_Load(Object sender, EventArgs e) 
      {

         // Load sample data only once, when the page is first loaded.
         if (!IsPostBack) 
         {
            ItemsList.DataSource = CreateDataSource();
            ItemsList.DataBind();
         }

      }

      void Button_Click(Object sender, EventArgs e) 
      {

         // Set the repeat direction based on the selected value of the
         // DirectionList DropDownList control.
         ItemsList.RepeatDirection = 
             (RepeatDirection)DirectionList.SelectedIndex;

         // Set the repeat layout based on the selected value of the
         // LayoutList DropDownList control.
         ItemsList.RepeatLayout = (RepeatLayout)LayoutList.SelectedIndex;

         // Set the number of columns to display based on the selected
         // value of the ColumnsList DropDownList control.
         ItemsList.RepeatColumns = ColumnsList.SelectedIndex;

         // Show or hide the gridlines based on the value of the
         // ShowBorderCheckBox property. Note that gridlines are displayed
         // only if the RepeatLayout property is set to Table.
         if ((ShowBorderCheckBox.Checked) 
             && (ItemsList.RepeatLayout == RepeatLayout.Table)) 
         {
            ItemsList.BorderWidth = Unit.Pixel(1);
            ItemsList.GridLines = GridLines.Both;
         }    
         else  
         {
            ItemsList.BorderWidth = Unit.Pixel(0);
            ItemsList.GridLines = GridLines.None;
         }

      }    

   </script>

<head runat="server">
    <title>DataList Example</title>
</head>
<body>

   <form id="form1" runat="server">

      <h3>DataList Example</h3>

      <asp:DataList id="ItemsList"
           BorderColor="black"
           CellPadding="5"
           CellSpacing="5"
           RepeatDirection="Vertical"
           RepeatLayout="Table"
           RepeatColumns="0"
           BorderWidth="0"
           runat="server">

         <HeaderStyle BackColor="#aaaadd">
         </HeaderStyle>

         <AlternatingItemStyle BackColor="Gainsboro">
         </AlternatingItemStyle>

         <HeaderTemplate>

            List of items

         </HeaderTemplate>

         <ItemTemplate>

            Description: <br />
            <%# DataBinder.Eval(Container.DataItem, "StringValue") %>

            <br />

            Price: <%# DataBinder.Eval(Container.DataItem, "CurrencyValue", "{0:c}") %>

            <br />

            <asp:Image id="ProductImage"
                 AlternatingText='<%# DataBinder.Eval(Container.DataItem, "StringValue") %>'
                 ImageUrl='<%# DataBinder.Eval(Container.DataItem, "ImageValue") %>'
                 runat="server"/>

         </ItemTemplate>

      </asp:DataList>

      <hr />

      <table cellpadding="5">

         <tr>

            <th>

               Repeat direction:

            </th>

            <th>

               Repeat layout:

            </th>

            <th>

               Repeat columns:

            </th>

            <th>

               <asp:CheckBox id="ShowBorderCheckBox"
                    Text="Show border"
                    Checked="False" 
                    runat="server" />

            </th>

         </tr>

         <tr>

            <td>

               <asp:DropDownList id="DirectionList" 
                    runat="server">

                  <asp:ListItem>Horizontal</asp:ListItem>
                  <asp:ListItem Selected="True">Vertical</asp:ListItem>

               </asp:DropDownList>

            </td>

            <td>

               <asp:DropDownList id="LayoutList" 
                    runat="server">

                  <asp:ListItem Selected="True">Table</asp:ListItem>
                  <asp:ListItem>Flow</asp:ListItem>

               </asp:DropDownList>

            </td>

            <td>

               <asp:DropDownList id="ColumnsList" 
                    runat="server">

                  <asp:ListItem Selected="True">0</asp:ListItem>
                  <asp:ListItem>1</asp:ListItem>
                  <asp:ListItem>2</asp:ListItem>
                  <asp:ListItem>3</asp:ListItem>
                  <asp:ListItem>4</asp:ListItem>
                  <asp:ListItem>5</asp:ListItem>

               </asp:DropDownList>

            </td>

            <td>

               &nbsp;

            </td>


         </tr>

      </table>     

      <asp:LinkButton id="RefreshButton" 
           Text="Refresh DataList" 
           OnClick="Button_Click" 
           runat="server"/>

   </form>

</body>
</html>

.NET Framework

Supported in: 4.5.1, 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Did you find this helpful?
(1500 characters remaining)
Thank you for your feedback
Show:
© 2014 Microsoft. All rights reserved.