【问题标题】:Delete multiple row with radgrid使用 radgrid 删除多行
【发布时间】:2012-12-22 11:05:53
【问题描述】:

我正在使用带有多选行的 Radgrid 视图

我想使用 RadGrid 中的复选框删除所有选定的记录

代码:

<telerik:RadGrid ID="RadGrid1" runat="server" AutoGenerateColumns="False" 
    OnNeedDataSource="RadGrid1_NeedDataSource" 
    AllowMultiRowSelection="true">
    <MasterTableView DataKeyNames="ID">
        <Columns>
            <telerik:GridClientSelectColumn>
            </telerik:GridClientSelectColumn>
            <telerik:GridBoundColumn DataField="Name" UniqueName="Name" HeaderText="Name">
            </telerik:GridBoundColumn>
            <telerik:GridEditCommandColumn>
            </telerik:GridEditCommandColumn>
        </Columns>
    </MasterTableView>
    <ClientSettings>
        <Selecting AllowRowSelect="true" />
    </ClientSettings>
</telerik:RadGrid>

.aspx.vb

    Protected Sub Button1_Click(sender As Object, e As EventArgs)
         For Each item As GridDataItem In RadGrid1.SelectedItems

            If item.Selected Then

            'Access data key

             Dim strID As String = item.GetDataKeyValue("ID").ToString()

            End If

         NEXT

       End Sub

问题是当我使用此方法获取选定行 ID 以删除记录时,它只检索一个记录 ID 并删除检索到该 ID 的记录。

示例:我选择记录 1、2、3、4 并单击删除按钮,它只删除 ID=4 的记录

【问题讨论】:

    标签: telerik radgrid


    【解决方案1】:

    我不太了解 vs Basic。但我可以这么说, 您在此命令中失去了当前的 ID 知识

    Dim strID As String = item.GetDataKeyValue("ID").ToString()
    

    foreach 中的每次迭代,您的 strId 变量都会更新为新的项目 ID。

    也许你可以使用 concat 字符串方法(也许

    strId += item.id
    

    保存所有选择的 ID。

    【讨论】:

      【解决方案2】:

      试试下面的代码:

      protected void Button1_Click(object sender, EventArgs e)
      {
          string strID = string.Empty;
      
          foreach( GridDataItem grditem in  RadGrid.SelectedItems)
          {
              if (grditem.Selected)
              {
                  strID = strID +  "," + grditem.GetDataKeyValue("ID").ToString();
              }
          }
      
          if (strID != string.Empty)
          {
              //your delete logic for db
              // pass strID it will contain 1,2,3,4
          }
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2019-04-13
        • 1970-01-01
        • 1970-01-01
        • 2013-04-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多