删除c#asp.net中动态创建的网格视图中的行

问题描述 投票:0回答:1

我的网页上有多个动态创建的网格视图。我需要为所有gridview添加删除按钮。点击按钮我需要删除该特定网格中的行。

我在网格中添加了删除按钮。点击按钮我需要获取网格ID,以便我可以删除该网格中的行。如何实现这一目标。

protected GridView generategrid(int counter)
{
    //creating grid from code behind
    GridView grid = new GridView();
    grid.AutoGenerateColumns = false;

    BoundField techname = new BoundField();
    techname.HeaderText = "Tech Name";
    techname.DataField = "Tech Name";
    grid.Columns.Add(techname);

    BoundField name = new BoundField();
    name.HeaderText = "Name";
    name.DataField = "Name";
    grid.Columns.Add(name);

    TemplateField Action = new TemplateField();
    Action.HeaderText = "Action";
    Action.ItemStyle.HorizontalAlign = HorizontalAlign.Center;
    grid.Columns.Add(Action);

    grid.RowCreated += deleteButton;
    grid.ID = "gv_conditiontable" + (counter + 1);

    grid.RowDeleting += new 
    GridViewDeleteEventHandler(OnRowDeleting);
}

protected void Page_Load(object sender, EventArgs e)
{
     for (int i = 0; i < Tablecount; i++)
     {          
         generategrid(i);
     }
}

protected void deleteButton(object sender, GridViewRowEventArgs e)
{
    if (e.Row.RowType == DataControlRowType.DataRow)
    {
        Button Btn = new Button();
        Btn.ID = "btn_selectcols";
        Btn.Text = "Delete";
        Btn.CommandName = "Delete";

        e.Row.Cells[2].Controls.Add(Btn);
    }     
}

protected void OnRowDeleting(object sender, GridViewDeleteEventArgs e)
{
    int index = Convert.ToInt32(e.RowIndex);
}

如何获取gridview id以删除行

我正在为每张桌子生成网格。当我点击删除时,它应该指向该特定网格并删除该行。我参与过静态gridview。但是在动态网格中处理事件,我迷失了。

c# asp.net gridview dynamic delete-row
1个回答
0
投票

在调试中检查发件人对象。您将在发件人对象中找到网格ID。

© www.soinside.com 2019 - 2024. All rights reserved.