0

我的代码如下。我没有将我的数据存储在数据库中。我只是从 TextBox 中提取数据,并将其显示在 GridView 中。如何使用复选框和按钮从 GridView 中删除多行? //删除行的代码

ASPX 代码:

 <asp:TemplateField>
 <ItemTemplate>
 <asp:CheckBox ID="chkdelete" runat="server" />
 </ItemTemplate>
 </asp:TemplateField>

C#代码:

protected void btnDelete_Click(object sender, EventArgs e)
{
    //Loop through all the rows in gridview
    foreach(GridViewRow gvrow in gvUserDetails.Rows)
    {
        //Finiding checkbox control in gridview for particular row
        CheckBox chkdelete = (CheckBox)gvrow.FindControl("chkdelete");
        //Condition to check checkbox selected or not
        if(chkdelete.Checked)
        {
            //code for deleting the row    (What code do I write here?)
        }
    }
} 
4

2 回答 2

0

如果 GridView 像 DataGridView 一样工作,那么简单的GridView.Rows.RemoveAt(index)应该做你想要的。

编辑:在这种情况下,您不想执行foreach而是执行 a for(int loop=GridView.Rows.Count - 1; loop>=0; loop--),而是。

于 2013-10-21T20:21:44.373 回答
0

您必须基本上删除数据库中的行或您绑定网格视图的任何此类内容。所以删除所有行,创建新的 DataSource 并再次绑定 gridview,它应该像一个魅力一样工作。

更新:由于您没有使用任何数据库,因此您仍然肯定会有一些数据源用于绑定您的 gridview,因此请修改它并再次绑定 gridview。

于 2013-02-21T09:26:17.013 回答