webfrom 动态生成gridview添加按钮列后如何进入按钮的点击事件,求大神指教

public void setBind(DataTable dt)
{
gvshow = new GridView();
gvshow.Width = Unit.Pixel(700);

        gvshow.AutoGenerateColumns = false;
        gvshow.RowEditing  += new GridViewEditEventHandler(gvshow_RowEditing); //添加编辑事件
       // gvshow.RowDeleting  += new GridViewDeleteEventHandler(gvshow_RowDeleting);
        gvshow.DataSource = dt;
        for (int i = 0; i < dt.Columns.Count; i++)
        {
            BoundField bc = new BoundField();
            bc.DataField = dt.Columns[i].ColumnName.ToString();
            bc.HeaderText = dt.Columns[i].Caption.ToString();
            gvshow.Columns.Add(bc);
        }


        CommandField cf = new CommandField();
        cf.ButtonType = ButtonType.Button;
        cf.HeaderText = "添加规格";
        cf.EditText = "添加规格";
        cf.ShowEditButton = true;
        cf.CausesValidation = false;
        cf.ItemStyle.HorizontalAlign = HorizontalAlign.Center;
        gvshow.Columns.Add(cf);

        CommandField cf2 = new CommandField();
        cf2.ButtonType = ButtonType.Button;
        cf2.HeaderText = "chakan";
        cf2.SelectText = "chakan";
        cf2.ShowSelectButton = true;
        cf2.CausesValidation = false;
        gvshow.Columns.Add(cf2);
        gvshow.DataBind();
        divshow.Controls.Add(gvshow);

    }

            这个是生成gv的代码,和添加按钮列的代码

             public  void gvshow_RowEditing(object sender, GridViewEditEventArgs e)
    {
        int i = e.NewEditIndex;

        string id = gvshow.Rows[i].Cells[0].Text.ToString();
        ShowMessageBox(i.ToString()+id);
    }
            我点击编辑按钮一直进不去这个事件

3个回答

qq_36609010
qq_36609010 大神,我这个前台就一个div 显示这个动态生成的gv,我按钮也是动态生成的直接
大约 3 年之前 回复

这个问题我跪了一天了,按照网上的方法我也看了,没什么区别,就是进不去这个按钮的点击事件

这里应该是给按钮的Click事件添加事件呀,而且你添加的事件是行编辑事件,是在编辑行内数据的时候触发的事件而不是点击按钮的时候触发的事件呀

qq_36609010
qq_36609010 这个按钮是代码自动生成的,好像是那个添加按钮列,按钮在编辑页面是没有的
大约 3 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问