如何在gridview RowDataBound中创建按钮单击事件c#asp.net

临时太阳

我正在尝试在gridview c#asp.net中的rowdatabound中创建按钮并单击事件,如下代码

 protected void btnerror_Click(object sender, EventArgs e)
{
         GridView gv = new GridView();
        gv.RowDataBound += gv_RowDataBound;
        gv.RowCommand += gv_RowCommand;
        gv.RowCreated += gv_RowCreated;

        gv.EnableViewState = true;

        gv.DataSource = _dt;
        gv.DataBind();
}


void gv_RowDataBound(object sender, GridViewRowEventArgs e)
{
    if (e.Row.RowType == DataControlRowType.DataRow)
    {

        ImageButton btnUpdate = new ImageButton();

        btnUpdate.ID = "btnupdate";
        btnUpdate.ImageUrl = "~/SmartAdmin/Images/update.png";
        btnUpdate.ToolTip = "Click Update";
        btnUpdate.CommandName = "update";


        btnUpdate.Click += btnUpdate_Click;

        TableCell tc = new TableCell();

        tc.Controls.Add(btnUpdate);
        e.Row.Cells.Add(tc);

    }
}


void gv_RowCommand(object sender, GridViewCommandEventArgs e)
{
    if (e.CommandName == "update")
    {

    }
}

当单击该按钮单击事件未触发时...

我哪里出错了...

感谢你.......

蒂姆·施密特

您真的要GridView手动创建吗?我对此表示强烈怀疑。而是声明式地将其添加到aspx-page并使其在中可见btnerror_Click

不要动态创建控件并RowDataBoundRowCreated其中注册事件处理程序,但是在每次回发中都会触发该事件处理程序(与相对RowDataBound):

void gv_RowCreated(object sender, GridViewRowEventArgs e)
{
    if (e.Row.RowType == DataControlRowType.DataRow)
    {
        ImageButton btnUpdate = new ImageButton();
        btnUpdate.Click += btnUpdate_Click;
        TableCell tc = new TableCell();

        tc.Controls.Add(btnUpdate);
        e.Row.Cells.Add(tc);
    }
}

void gv_RowDataBound(object sender, GridViewRowEventArgs e)
{
    if (e.Row.RowType == DataControlRowType.DataRow)
    {    
        ImageButton btnUpdate = (ImageButton)e.Row.FindControls("btnupdate") 
        btnUpdate.ID = "btnupdate";
        btnUpdate.ImageUrl = "~/SmartAdmin/Images/update.png";
        btnUpdate.ToolTip = "Click Update";
        btnUpdate.CommandName = "update";
    }
}

因此RowCreated,在RowDataBound其中创建它,在您可以访问数据源的地方对其进行初始化(如果需要)。

另外请注意,你应该DataBindGridViewif(!IsPostBack)不是每次回发(如果是这样的话)。因此,请在分配数据源的位置添加此检查。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在asp.net的gridview中创建链接

来自分类Dev

当我单击gridview中的“编辑”按钮时,如何调用“删除行”事件?asp.net C#

来自分类Dev

如何知道在asp.net gridView中单击按钮的位置

来自分类Dev

如何在asp.net中清除GridView?

来自分类Dev

如何在asp.net中清除GridView?

来自分类Dev

如何在 Asp.Net 中制作 GridView 多列

来自分类Dev

如何在 ASP.NET 中的 GridView 中计算总价

来自分类Dev

如何在asp.net中将GridView与某些条件绑定?

来自分类Dev

如何在新的Select(ASP.NET)上清除gridview

来自分类Dev

如何在asp.net中将GridView与某些条件绑定?

来自分类Dev

如何在ASP.NET中使多个controlParameter过滤GridView?

来自分类Dev

如何在C#ASP NET Core中的后台服务内部使用Mediator?

来自分类Dev

如何在GridView ASP.NET中插入单选按钮列

来自分类Dev

如何在GridView ASP.NET中插入单选按钮列

来自分类Dev

如何在asp.net的GridView中启用和禁用按钮

来自分类Dev

如何在asp .net和c#中的gridview中启用选定的行

来自分类Dev

如何在ASP.Net C#中的GridView的EditMode中显示DropdownList?

来自分类Dev

如何在ASP.NET C#应用程序中向GridView添加行

来自分类Dev

如何在ASP.NET C#中从SQL Server到GridView中选择数据

来自分类Dev

ASP.NET C#如何在GridView中更改数据并写入XML

来自分类Dev

如何在asp.net 中单击按钮执行C# 代码?

来自分类Dev

如何为复选框添加事件单击Asp.net Gridview列中

来自分类Dev

如何防止用户单击ASP.NET Webforms的gridview中多次启动文件下载的图像按钮?

来自分类Dev

如何在asp.net中的GridView中检查复选框列的状态

来自分类Dev

如何在asp.net中动态仅在gridView中添加行?

来自分类Dev

如何在asp.net(Web表单)中的gridview中附加tfoot

来自分类Dev

如何在asp.net中将LINQ结果变量绑定到Gridview中

来自分类Dev

如何在asp.net中的ButtonClick上使用Javascript隐藏GridView列?

来自分类Dev

如何在asp.net的GridView中对对象列表进行排序?

Related 相关文章

  1. 1

    如何在asp.net的gridview中创建链接

  2. 2

    当我单击gridview中的“编辑”按钮时,如何调用“删除行”事件?asp.net C#

  3. 3

    如何知道在asp.net gridView中单击按钮的位置

  4. 4

    如何在asp.net中清除GridView?

  5. 5

    如何在asp.net中清除GridView?

  6. 6

    如何在 Asp.Net 中制作 GridView 多列

  7. 7

    如何在 ASP.NET 中的 GridView 中计算总价

  8. 8

    如何在asp.net中将GridView与某些条件绑定?

  9. 9

    如何在新的Select(ASP.NET)上清除gridview

  10. 10

    如何在asp.net中将GridView与某些条件绑定?

  11. 11

    如何在ASP.NET中使多个controlParameter过滤GridView?

  12. 12

    如何在C#ASP NET Core中的后台服务内部使用Mediator?

  13. 13

    如何在GridView ASP.NET中插入单选按钮列

  14. 14

    如何在GridView ASP.NET中插入单选按钮列

  15. 15

    如何在asp.net的GridView中启用和禁用按钮

  16. 16

    如何在asp .net和c#中的gridview中启用选定的行

  17. 17

    如何在ASP.Net C#中的GridView的EditMode中显示DropdownList?

  18. 18

    如何在ASP.NET C#应用程序中向GridView添加行

  19. 19

    如何在ASP.NET C#中从SQL Server到GridView中选择数据

  20. 20

    ASP.NET C#如何在GridView中更改数据并写入XML

  21. 21

    如何在asp.net 中单击按钮执行C# 代码?

  22. 22

    如何为复选框添加事件单击Asp.net Gridview列中

  23. 23

    如何防止用户单击ASP.NET Webforms的gridview中多次启动文件下载的图像按钮?

  24. 24

    如何在asp.net中的GridView中检查复选框列的状态

  25. 25

    如何在asp.net中动态仅在gridView中添加行?

  26. 26

    如何在asp.net(Web表单)中的gridview中附加tfoot

  27. 27

    如何在asp.net中将LINQ结果变量绑定到Gridview中

  28. 28

    如何在asp.net中的ButtonClick上使用Javascript隐藏GridView列?

  29. 29

    如何在asp.net的GridView中对对象列表进行排序?

热门标签

归档