RepeaterItemEventHandler 委托

定义

表示将处理 ItemCreatedItemDataBoundRepeater 事件的方法。

C#
public delegate void RepeaterItemEventHandler(object sender, RepeaterItemEventArgs e);

参数

sender
Object

事件源。

e
RepeaterItemEventArgs

包含事件数据的 RepeaterItemEventArgs

示例

以下示例演示如何为 ItemCreated 的 事件 Repeater指定和编码处理程序。 一个新文本行,指示每当 Repeater 创建项时显示项类型。

ASP.NET (C#)
<%@ Page Language="C#" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<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>
 
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
    <title>Repeater Example</title>
</head>
<body>
    <form id="form1" runat="server">

    <h3>Repeater Example</h3>
 
       <p style="font-weight: bold">Repeater1:</p>
         
       <asp:Repeater ID="Repeater1" OnItemCreated="R1_ItemCreated" runat="server">
          <HeaderTemplate>
             <table border="1">
                <tr>
                   <td style="font-weight:bold">Company</td>
                   <td style="font-weight:bold">Symbol</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>
       <br />
         
       <asp:Label ID="Label1" Font-Names="Verdana" 
          ForeColor="Green" Font-Size="10pt" Runat="server"/>
    </form>
 </body>
 </html>

注解

创建 RepeaterItemEventHandler 委托时,需要标识将处理该事件的方法。 若要将事件与事件处理程序关联,请将该委托的一个实例添加到事件中。 除非移除了该委托,否则每当发生该事件时就会调用事件处理程序。 有关事件处理程序委托的详细信息,请参阅 处理和引发事件

有关如何处理事件的详细信息,请参阅 处理和引发事件

扩展方法

GetMethodInfo(Delegate)

获取指示指定委托表示的方法的对象。

适用于

产品 版本
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1

另请参阅