1

我有一个嵌套列表视图,我在父“ItemDataBound”事件上进行数据绑定,但是如何访问/注册嵌套列表视图的 itemdatabound 事件?

谢谢!

编辑

我的父列表视图 itemdatabound 现在看起来像这样,

Protected Sub lvwManagePolicy_ItemDataBound(sender As Object, e As System.Web.UI.WebControls.ListViewItemEventArgs) Handles lvwManagePolicy.ItemDataBound

    If e.Item.ItemType = ListViewItemType.DataItem Then
        Dim rv As DataRowView = CType(e.Item.DataItem, DataRowView)

        Me.dsAccoutnTransactionHistory = Wrap.getWrapAccountTransactionHistory(rv!PLATFORM_ID, False)
        Dim lvwTransactionHistory As ListView = DirectCast(e.Item.FindControl("lvwTransactionHistory"), ListView)
        lvwTransactionHistory.ItemDataBound += New EventHandler(Of ListViewItemEventArgs)(lvwTransactionHistory_ItemDataBound)
        lvwTransactionHistory.DataSource = dsAccoutnTransactionHistory
        lvwTransactionHistory.DataBind()
    End If

End Sub

但我得到一个错误

BC32022:“公共事件 ItemDataBound(sender As Object, e As System.Web.UI.WebControls.ListViewItemEventArgs)”是一个事件,不能直接调用。使用“RaiseEvent”语句来引发事件。

4

2 回答 2

1

在将数据分配给父控件中的嵌套控件之前,您可以在父控件下注册如下事件ItemBoundData

ListView f = new ListView();
f.ItemDataBound += new EventHandler<ListViewItemEventArgs>(f_ItemDataBound);

protected void f_ItemDataBound(object sender, ListViewItemEventArgs e)
{

}
于 2012-03-17T19:30:30.620 回答
1

你可以这样:

  <asp:ListView onitemcommand="inner_ItemCommand" ...

受保护/公共项目命令方法需要:

  public void inner_ItemCommand(object sender,  ListViewCommandEventArgs e)
    {
        if (e.CommandArgument == "delete")
        {
            //do delete here
        }
    }
于 2013-07-14T11:02:53.067 回答