RepeaterItemEventHandler Delegate
Represents the method that will handle the ItemCreated and ItemDataBound events of a Repeater.
[Visual Basic] <Serializable> Public Delegate Sub RepeaterItemEventHandler( _ ByVal sender As Object, _ ByVal e As RepeaterItemEventArgs _ ) [C#] [Serializable] public delegate void RepeaterItemEventHandler( object sender, RepeaterItemEventArgs e ); [C++] [Serializable] public __gc __delegate void RepeaterItemEventHandler( Object* sender, RepeaterItemEventArgs* e );
[JScript] In JScript, you can use the delegates in the .NET Framework, but you cannot define your own.
Parameters [Visual Basic, C#, C++]
The declaration of your event handler must have the same parameters as the RepeaterItemEventHandler delegate declaration.
- sender
- The source of the event.
- e
- A RepeaterItemEventArgs that contains the event data.
Remarks
When you create a RepeaterItemEventHandler delegate, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event handler delegates, see Events and Delegates.
For more information about handling events, see Consuming Events.
Example
[Visual Basic, C#] The following example demonstrates how to specify and code a handler for the ItemCreated event of the Repeater. A new line of text indicating the item type is displayed whenever a Repeater item is created.
[Visual Basic] <%@ Page Language="VB" AutoEventWireup="True" %> <html> <head> <script language="VB" runat="server"> Dim Count As Integer = 1 Sub Page_Load(Sender As Object, e As EventArgs) If Not IsPostBack Then Dim values As New ArrayList() values.Add(New PositionData("Microsoft", "Msft")) values.Add(New PositionData("Intel", "Intc")) values.Add(New PositionData("Dell", "Dell")) Repeater1.DataSource = values Repeater1.DataBind() End If End Sub Sub R1_ItemCreated(Sender As Object, e As RepeaterItemEventArgs) Dim iTypeText As String = "" Select Case e.Item.ItemType Case ListItemType.Item iTypeText = "Item" Case ListItemType.AlternatingItem iTypeText = "AlternatingItem" Case ListItemType.Header iTypeText = "Header" Case ListItemType.Footer iTypeText = "Footer" Case ListItemType.Separator iTypeText = "Separator" End Select Count = Count + 1 Label1.Text &= "(" & Count & ") A Repeater " & iTypeText & _ " has been created; <br>" End Sub Public Class PositionData Private myName As String Private myTicker As String Public Sub New(newName As String, newTicker As String) Me.myName = newName Me.myTicker = newTicker End Sub Public ReadOnly Property Name() As String Get Return myName End Get End Property Public ReadOnly Property Ticker() As String Get Return myTicker End Get End Property End Class </script> </head> <body> <h3>Repeater Example</h3> <form runat=server> <b>Repeater1:</b> <p> <asp:Repeater id=Repeater1 OnItemCreated="R1_ItemCreated" runat="server"> <HeaderTemplate> <table border=1> <tr> <td><b>Company</b></td> <td><b>Symbol</b></td> </tr> </HeaderTemplate> <ItemTemplate> <tr> <td> <%# DataBinder.Eval(Container.DataItem, "Name") %> </td> <td> <%# DataBinder.Eval(Container.DataItem, "Ticker") %> </td> </tr> </ItemTemplate> <FooterTemplate> </table> </FooterTemplate> </asp:Repeater> <p> <asp:Label id=Label1 font-name="Verdana" ForeColor="Red" font-size="10pt" runat="server"/> </form> </body> </html> [C#] <%@ Page Language="C#" AutoEventWireup="True" %> <html> <head> <script language="C#" runat="server"> int Count = 1; void Page_Load(Object Sender, EventArgs e) { if (!IsPostBack) { ArrayList values = new ArrayList(); values.Add(new PositionData("Microsoft", "Msft")); values.Add(new PositionData("Intel", "Intc")); values.Add(new PositionData("Dell", "Dell")); Repeater1.DataSource = values; Repeater1.DataBind(); } } void R1_ItemCreated(Object Sender, RepeaterItemEventArgs e) { String iTypeText = ""; switch (e.Item.ItemType) { case ListItemType.Item: iTypeText = "Item"; break; case ListItemType.AlternatingItem: iTypeText = "AlternatingItem"; break; case ListItemType.Header: iTypeText = "Header"; break; case ListItemType.Footer: iTypeText = "Footer"; break; case ListItemType.Separator: iTypeText = "Separator"; break; } Label1.Text += "(" + Count++ + ") A Repeater " + iTypeText + " has been created; <br>"; } public class PositionData { private string name; private string ticker; public PositionData(string name, string ticker) { this.name = name; this.ticker = ticker; } public string Name { get { return name; } } public string Ticker { get { return ticker; } } } </script> </head> <body> <h3>Repeater Example</h3> <form runat=server> <b>Repeater1:</b> <p> <asp:Repeater id=Repeater1 OnItemCreated="R1_ItemCreated" runat="server"> <HeaderTemplate> <table border=1> <tr> <td><b>Company</b></td> <td><b>Symbol</b></td> </tr> </HeaderTemplate> <ItemTemplate> <tr> <td> <%# DataBinder.Eval(Container.DataItem, "Name") %> </td> <td> <%# DataBinder.Eval(Container.DataItem, "Ticker") %> </td> </tr> </ItemTemplate> <FooterTemplate> </table> </FooterTemplate> </asp:Repeater> <p> <asp:Label id=Label1 font-name="Verdana" ForeColor="Red" font-size="10pt" runat="server"/> </form> </body> </html>
[C++, JScript] No example is available for C++ or JScript. To view a Visual Basic or C# example, click the Language Filter button
in the upper-left corner of the page.
Requirements
Namespace: System.Web.UI.WebControls
Platforms: Windows 2000, Windows XP Professional, Windows Server 2003 family
Assembly: System.Web (in System.Web.dll)
See Also
System.Web.UI.WebControls Namespace | Repeater | RepeaterItemEventArgs | ItemCreated | ItemDataBound