在研究GridView自定义分页的过程中,我在GridView的RowCreated事件中动态加一个LinkButton:protected void gridView_RowCreated(object sender, GridViewRowEventArgs e)
{
  if (!IsPostBack&&e.Row.RowType == DataControlRowType.Pager)
            {
                
               LinkButton lb = new LinkButton();
               lb.ID = "btNnext";
               lb.Text = "Next";
               lb.CommandName = "Page";
               lb.CommandArgument = "2";//希望点击此按钮后能跳到第2页(这里为方便测试把跳转页码固定了)
                e.Row.Controls.Clear();//清除默认的分页对象               TableCell tc = new TableCell();
               tc.Controls.Add(lb);
               e.Row.Controls.Add(tc);//添加自己的分页按钮
           }
}页面出来后有10行数据,gridView底部有一个"Next"的按钮,然后点击这个按钮,为什么触发不了GridView中的Command事件或PageIndexChanging事件?想要让它触发Command事件或PageIndexChanging事件,应该怎么做?

解决方案 »

  1.   

    要在源文件写个linkButton的Command事件=“你要用的事件名字”
      

  2.   

    <%@ Page .. EventWireup="true"%>
      

  3.   

    不想用linkButton的Command事件,想用gridView的Command事件或PageIndexChanging事件,MSDN上不是说gridView中的按钮点击后,gridView的Command事件可以捕捉到吗?
    已经设置了 <%@ Page .. EventWireup="true"%>
      

  4.   

    protected void gridView_RowCreated(object sender, GridViewRowEventArgs e)
    {
      if (!IsPostBack&&e.Row.RowType == DataControlRowType.Pager)
                {
                    
                   LinkButton lb = new LinkButton();
                   lb.ID = "btNnext";
                   lb.Text = "Next";
                   lb.CommandName = "Page";
                   lb.CommandArgument = "2";//希望点击此按钮后能跳到第2页(这里为方便测试把跳转页码固定了)
    lb.OnCommand+=new CommandEventHandler(lb_Command);//这里要将事件激发后的处理事件挂接,就是当事件发生后由哪个方法处理
                    e.Row.Controls.Clear();//清除默认的分页对象               TableCell tc = new TableCell();
                   tc.Controls.Add(lb);
                   e.Row.Controls.Add(tc);//添加自己的分页按钮
               }
    }//处理点击的方法
    protected void lb_Command(object sender, CommandEventArgs e) 
        { 
            Response.Write("发生了Command事件,事件的数据是:" + e.CommandArgument.ToString()); 
        }