将click事件添加到gridview中的动态生成按钮 [英] Adding a click event to a dynamically generated button in a gridview

查看:96
本文介绍了将click事件添加到gridview中的动态生成按钮的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在向gridview onRowDataBound事件添加按钮



I am adding buttons to my gridview onRowDataBound Event

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
        {
            if (e.Row.RowType == DataControlRowType.DataRow)
            {
                var firstCell = e.Row.Cells[1];
                firstCell.Controls.Clear();
                Button btn_Check = new Button();
                btn_Check.ID = "btn_Check";
                btn_Check.Text = firstCell.Text;
                btn_Check.Click += new EventHandler(btn_Check_Click);
                firstCell.Controls.Add(btn_Check);
            }
        }
        protected void btn_Check_Click(object sender, EventArgs e)
        {
            Response.Write("btn_Check_Click event called");
        }





但点击按钮后,btn_Check_Click事件永远不会被调用。



如何制作按钮。点击调用btn_Check_Click?



but on clicking the button the btn_Check_Click event is never called.

how to make the button.Click call btn_Check_Click?

推荐答案

你应该在RowCreated [ ^ ]事件。这将在DataBinding以及在PostBack上重建页面时创建控件。

试试这个:

You should add dynamic controls in RowCreated[^] event of the GridView. This will create controls at DataBinding and as well as when rebuilding a page on PostBack.
Try this:
protected void GridView1_RowCreated(object sender, GridViewRowEventArgs e)
{
    if (e.Row.RowType == DataControlRowType.DataRow)
    {
        var firstCell = e.Row.Cells[1];
        firstCell.Controls.Clear();
        Button btn_Check = new Button();
        btn_Check.ID = "btn_Check";
        btn_Check.Text = firstCell.Text;
        btn_Check.Click += new EventHandler(btn_Check_Click);
        firstCell.Controls.Add(btn_Check);
    }
}

protected void btn_Check_Click(object sender, EventArgs e)
{
    Response.Write("btn_Check_Click event called");
}







--Amit




--Amit


这篇关于将click事件添加到gridview中的动态生成按钮的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆