1

我正在后面的代码中动态创建一个转发器。然后我想在调用 DataBind() 方法时执行 OnItemDataBound 事件,如下所示:

Dim Repeater1 As New Repeater()
Repeater1.DataSource = dataSource
Repeater1.OnItemDataBound = "Repeater1_OnItemDataBound"
Repeater1.DataBind()

编译器告诉我函数 OnItemDataBound 在此上下文中不可访问,因为它是“受保护的”

我正在创建一个动态转发器,因为它需要的列数取决于数据源中的数据。

调用 DataBind 方法时,如何为数据源中的每个项目执行我的 ItemDataBound 代码?

4

1 回答 1

4

您可能想要添加一个事件处理程序,那么您需要使用以下AddHandler语句:

AddHandler r.ItemDataBound, AddressOf Repeater1_OnItemDataBound

当然该方法必须是可访问的,通常它在同一个类中:

Protected Sub Repeater1_OnItemDataBound(sender As Object, e As RepeaterItemEventArgs)
    ' ... '
End Sub
于 2012-09-17T16:11:22.297 回答