【问题标题】:Adding Checkbox in asp.net Listview control to allow multiple delete在asp.net Listview控件中添加复选框以允许多次删除
【发布时间】:2015-07-06 21:35:22
【问题描述】:

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

但是怎么做呢?

【问题讨论】:

    标签: asp.net listview checkbox


    【解决方案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
    

    【讨论】:

      【解决方案2】:

      您需要为ListView中的项目创建一个模板,将复选框放入其中,然后在单击删除按钮时获取所有已选中的项目。您可以在客户端或服务器上跟踪所选项目,但始终需要一些工作来持久化它们。

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

      【讨论】:

        【解决方案3】:

        如果我想在 GridView 中执行此操作,我会使用 GridView 模板...尝试查看是否有 ListView 模板(如果有)。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2014-09-14
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2012-10-27
          相关资源
          最近更新 更多