System.Web.UI.WebControls.RepeaterItemEventArgs类是用于处理ASP.NET中Repeater控件的事件参数类。它包含了与Repeater控件的事件相关的信息。
以下是一个使用Repeater控件和RepeaterItemEventArgs类的示例代码:
ASPX页面代码:
code-behind代码:
Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
If Not IsPostBack Then
' 绑定数据到Repeater控件
BindData()
End If
End Sub
Protected Sub BindData()
' 模拟数据源
Dim items As New List(Of Item)()
items.Add(New Item() With {.ItemName = "Item 1"})
items.Add(New Item() With {.ItemName = "Item 2"})
items.Add(New Item() With {.ItemName = "Item 3"})
rptItems.DataSource = items
rptItems.DataBind()
End Sub
Protected Sub rptItems_ItemDataBound(sender As Object, e As RepeaterItemEventArgs)
If e.Item.ItemType = ListItemType.Item OrElse e.Item.ItemType = ListItemType.AlternatingItem Then
' 获取绑定到当前项的数据对象
Dim item As Item = TryCast(e.Item.DataItem, Item)
' 找到Label控件
Dim lblItemName As Label = TryCast(e.Item.FindControl("lblItemName"), Label)
' 设置Label控件的文本
lblItemName.Text = item.ItemName
End If
End Sub
Public Class Item
Public Property ItemName As String
End Class
上述示例中,首先在ASPX页面上定义了一个Repeater控件,并定义了一个ItemTemplate来显示每个项的数据。在code-behind代码中,在Page_Load事件中调用BindData方法来绑定数据到Repeater控件。在BindData方法中,模拟了一个数据源并将其绑定到Repeater控件上。
在rptItems_ItemDataBound事件中,首先判断当前项的类型是否为普通项(ListItemType.Item)或交替项(ListItemType.AlternatingItem),然后获取绑定到当前项的数据对象。接下来,通过FindControl方法找到Label控件,并设置其文本为数据对象的属性值。
这样,每个项都会根据数据源中的值显示相应的文本。