Repeater.OnItemCreated(RepeaterItemEventArgs) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
引發 ItemCreated 事件。
protected:
virtual void OnItemCreated(System::Web::UI::WebControls::RepeaterItemEventArgs ^ e);
protected virtual void OnItemCreated (System.Web.UI.WebControls.RepeaterItemEventArgs e);
abstract member OnItemCreated : System.Web.UI.WebControls.RepeaterItemEventArgs -> unit
override this.OnItemCreated : System.Web.UI.WebControls.RepeaterItemEventArgs -> unit
Protected Overridable Sub OnItemCreated (e As RepeaterItemEventArgs)
參數
包含事件資料的 RepeaterItemEventArgs 物件。
範例
下列範例說明處理 ItemCreated 控制項事件 Repeater 的方法。 新的文字行,指出每當 Repeater 建立專案時,就會顯示專案類型。
<%@ 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">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Repeater Example</title>
<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 id="form1" runat="server">
<b>Repeater1:</b>
<br />
<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>
<br />
<asp:Label id="Label1" font-names="Verdana" ForeColor="Red" font-size="10pt" runat="server"/>
</form>
</body>
</html>
<%@ Page Language="VB" AutoEventWireup="True" %>
<!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">
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 'New
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 id="form1" runat="server">
<b>Repeater1:</b>
<br />
<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>
<br />
<asp:Label id="Label1" font-names="Verdana" ForeColor="Red" font-size="10pt" runat="server"/>
</form>
</body>
</html>
備註
引發事件會透過委派叫用此事件處理常式。 如需如何處理事件的詳細資訊,請參閱 處理和引發事件。
給繼承者的注意事項
在 OnItemCreated(RepeaterItemEventArgs) 衍生類別中覆寫時,請務必呼叫基類的 OnItemCreated(RepeaterItemEventArgs) 方法。