RepeaterItem.ItemType Property

Definition

Gets the type of the item in the Repeater control.

public:
 virtual property System::Web::UI::WebControls::ListItemType ItemType { System::Web::UI::WebControls::ListItemType get(); };
public virtual System.Web.UI.WebControls.ListItemType ItemType { get; }
member this.ItemType : System.Web.UI.WebControls.ListItemType
Public Overridable ReadOnly Property ItemType As ListItemType

Property Value

One of the ListItemType values.

Examples

The following example demonstrates how to use the ItemType property to determine the item type of an item in the Repeater control. The order that items are created in the Repeater control are displayed along with the item type.

<%@ 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" >
<head>
    <title>Repeater Example</title>
<script language="C#" runat="server">

      void Page_Load(Object Sender, EventArgs e) 
      {
 
         if (!IsPostBack) 
         {
            ArrayList values = new ArrayList();
 
            values.Add(new PositionData("Item 1", "$6.00"));
            values.Add(new PositionData("Item 2", "$7.48"));
            values.Add(new PositionData("Item 3", "$9.96"));
 
            Repeater1.DataSource = values;
            Repeater1.DataBind();
         }

      }
      void Button_Click(Object Sender, EventArgs e) 
      {        
         Label1.Text = "The Items collection contains: <br />";

         foreach(RepeaterItem item in Repeater1.Items)
         {        
            Label1.Text += item.ItemType + " - " +
                           ((DataBoundLiteralControl)item.Controls[0]).Text +
                           "<br />";
         }
      }    
 
      public class PositionData 
      {
        
         private string item;
         private string price;
 
         public PositionData(string item, string price) 
         {
            this.item = item;
            this.price = price;
         }
 
         public string Item 
         {
            get 
            {
               return item;
            }
         }
 
         public string Price 
         {
            get 
            {
               return price;
            }
         }
      }
 
   </script>
 
</head>
<body>
 
   <form id="form1" runat="server">

      <h3>Repeater Example</h3>
         
      <br />
         
      <asp:Repeater id="Repeater1" 
                    runat="server">
         <HeaderTemplate>
            <table border="1">
               <tr>
                  <td><b>Item</b></td>
                  <td><b>Price</b></td>
               </tr>
         </HeaderTemplate>
             
         <ItemTemplate>
            <tr>
               <td> <%# DataBinder.Eval(Container.DataItem, "Item") %> </td>
               <td> <%# DataBinder.Eval(Container.DataItem, "Price") %> </td>
            </tr>
         </ItemTemplate>
            
         <FooterTemplate>
            </table>
         </FooterTemplate>
             
      </asp:Repeater>
      <br />

      <asp:Button id="Button1"
           Text="Display Items in Repeater"
           OnClick="Button_Click"
           runat="server"/>

      <br /><br />
         
      <asp:Label id="Label1"                 
                 runat="server"/>
   </form>
</body>
</html>
<%@ Page Language="VB" 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" >
<head>
    <title>Repeater Example</title>
<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(New PositionData("Item 1", "$6.00"))
            values.Add(New PositionData("Item 2", "$7.48"))
            values.Add(New PositionData("Item 3", "$9.96"))
            
            Repeater1.DataSource = values
            Repeater1.DataBind()
        End If
    End Sub
     
    Sub Button_Click(Sender As Object, e As EventArgs)
        Label1.Text = "The Items collection contains: <br />"
        
        Dim item As RepeaterItem
        For Each item In  Repeater1.Items
      Label1.Text &= item.ItemType.ToString() & " - " & _
          CType(item.Controls(0), DataBoundLiteralControl).Text & "<br />"
        Next item
    End Sub
 
    Public Class PositionData
        
        Private myItem As String
        Private myPrice As String        
        
        Public Sub New(newItem As String, newPrice As String)
            Me.myItem = newItem
            Me.myPrice = newPrice
        End Sub        
        
        Public ReadOnly Property Item() As String
            Get
                Return myItem
            End Get
        End Property        
        
        Public ReadOnly Property Price() As String
            Get
                Return myPrice
            End Get
        End Property
    End Class
 
   </script>
 
</head>
<body>
 
   <form id="form1" runat="server">

      <h3>Repeater Example</h3>
         
      <br />
         
      <asp:Repeater id="Repeater1" 
                    runat="server">
         <HeaderTemplate>
            <table border="1">
               <tr>
                  <td><b>Item</b></td>
                  <td><b>Price</b></td>
               </tr>
         </HeaderTemplate>
             
         <ItemTemplate>
            <tr>
               <td> <%# DataBinder.Eval(Container.DataItem, "Item") %> </td>
               <td> <%# DataBinder.Eval(Container.DataItem, "Price") %> </td>
            </tr>
         </ItemTemplate>
            
         <FooterTemplate>
            </table>
         </FooterTemplate>
             
      </asp:Repeater>
      <br />

      <asp:Button id="Button1"
           Text="Display Items in Repeater"
           OnClick="Button_Click"
           runat="server"/>

      <br /><br />
         
      <asp:Label id="Label1"                 
                 runat="server"/>
   </form>
</body>
</html>

Remarks

Use the ItemType property to determine the type of an item in the Repeater control. The following table lists the different item types.

Item Type Description
Header The heading section of the Repeater control.
Footer The footer section of the Repeater control.
Item An item in the Repeater control.
AlternatingItem An alternating item in the Repeater control.
SelectedItem The selected item in the Repeater control.
EditItem The item selected for editing in the Repeater control.
Separator A separator between the items of the Repeater control.
Pager The page selection section of the Repeater control.

Applies to

See also