在asp.net Listview控件中添加Checkbox以允许多次删除

时间:2010-03-05 09:20:28

标签: asp.net listview checkbox

我正在尝试在列表视图中的每一行前面显示复选框。因此,在选择所需的复选框后,用户单击“删除”按钮,我们应该删除该记录。

但怎么办呢?

3 个答案:

答案 0 :(得分:1)

在标记中添加复选框

<asp:CheckBox ID="ChkSelect" runat="server" />

代码背后如下:

Dim ChkSelect As CheckBox = Nothing
Dim ListItem As ListViewDataItem = Nothing
Dim ItemList As List(Of Person) = New List(Of Person)
Dim Item As Person= Nothing

    For Each ListItem In MyDataList.Items
        ChkSelect = ListItem.FindControl("ChkSelect")
        If ChkSelect.Checked Then

            Dim UIN As Integer = _
              MyDataList.DataKeys(ListItem.DisplayIndex).Value.ToString()
            Item = Persons.GetData(UIN)
            Item.Deleted = True
            ItemList.Add(Item)

        End If
    Next
    Data = Persons.UpdateBulk(ItemList)
    If Data = True Then
        BindMyData()
    End If

答案 1 :(得分:0)

您需要为ListView中的项目创建模板,将复选框放入其中,然后获取单击“删除”按钮时检查的所有项目。您可以跟踪客户端或服务器上的所选项目,但总是需要一些工作来保留它们。

这是一篇关于在ListView中使用模板的文章: http://msdn.microsoft.com/en-us/library/bb398790.aspx#CreatingTemplatesForTheListViewControl

答案 2 :(得分:0)

如果我想在GridView中使用GridView模板,请使用GridView模板...尝试查看是否有ListView模板。