首页 > 解决方案 > 单击时从 LinkBut​​ton 获取 ListViewItem

问题描述

我有一个这样的 ASPX 页面

<asp:ListView ID="lv" runat="server">
    <ItemTemplate>
        <asp:LinkButton ID="lvLB" OnClick="lvLB_OnClick" runat="server">ButtonLabel</asp:LinkButton>
    </ItemTemplate>
</ListView>

然后是 ASPX.cs 文件:

protected void lvLB_OnClick(object sender, EventArgs e){
    LinkButton lb = (LinkButton)sender;
    ListViewDataItem data = (ListViewDataItem)lb.Parent;
    DataRowView rV = data.DataItem as DataRowView;
}

列表视图与 DataSet 对象正确数据绑定,并在页面上显示正确的数据。

我正在尝试获取单击该按钮的 Item 的 DataRowView,但上面将在 data.DataItem 作为 DataRowView 返回 null。

我错过了什么?

标签: c#asp.net.net

解决方案


仅当基础类型为or时,您才能强制DataItem转换为。否则它不能立即转换。您的组件是 a ,因此如果需要,您必须自己映射它。DataRowViewDataViewDataTableListViewDataRowView


推荐阅读