我正在尝试在列表视图中的每一行前面显示复选框。因此,在选择所需的复选框后,用户单击“删除”按钮,我们应该删除该记录。
但怎么办呢?
答案 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模板。