从网上看的一个教程,是在gridview下面放了一个panle控件,里面装了四个button,分别对应分页的首页,末页,上页,下页。哦,还设了个commandArgument分别对应fist,last,prev,next.
以下是代码
protected void button1_click(……)
{
{switch(((button)sender.CommandArgument.ToString())
case "first"
   gridview1.pageindex=0;
break;
case "last"
   gridview1.pageindex=gridview1.pagecount-1;
case "prev"
……
case "next"
……}
bind();//绑定事件
}
好累啊,我就不写全了,我知道他的意思是点每一个按钮都对应相应的分页。但事件是写在button1里啊,所我我只点首页才起作用。“下页”“末页”“上页”没反应。
请问是少了什么事件,还是怎么设置啊,才可以实现switch描述的那样???

解决方案 »

  1.   

    把“下页”“末页”“上页”按钮的事件都绑定到 button1_click:button2.Click += new EventHandler(button1_click);
    button3.Click += new EventHandler(button1_click);
    button4.Click += new EventHandler(button1_click);
      

  2.   

    <asp:Button ID="Button1" runat="server" CommandArgument="first" onclick="Button1_Click1" Text="Button" />
    <asp:Button ID="Button2" runat="server" CommandArgument="prev" onclick="Button1_Click1" Text="Button" />
    <asp:Button ID="Button3" runat="server" CommandArgument="next" onclick="Button1_Click1" Text="Button" />
    <asp:Button ID="Button4" runat="server" CommandArgument="last" onclick="Button1_Click1" Text="Button" />
      

  3.   

    还需要加上GridView的分页事件代码吧:
    protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
    {
      GridView1.PageIndex = e.NewPageIndex;
      GridView1.DataBind();
    }
      

  4.   

    看看aspnetpager控件
     imgbtn_Frist = new ImageButton();
                imgbtn_Frist.ID = "imgbtn_Frist";
                imgbtn_Frist.ImageUrl = FistImageUrl;
                imgbtn_Frist.Click += new ImageClickEventHandler(imgbtn_Frist_Click);            imgbtn_Prev = new ImageButton();
                imgbtn_Prev.ID = "imgbtn_Pre";
                imgbtn_Prev.ImageUrl = PrevImageUrl;
                imgbtn_Prev.Click += new ImageClickEventHandler(imgbtn_Prev_Click);
     private void imgbtn_Frist_Click(object sender, EventArgs e) //第一页
            {
                if (PageIndex <= 0) return;
                PageIndex =0;
                OnPageChanged(EventArgs.Empty);
            }
            private void imgbtn_Prev_Click(object sender, EventArgs e) //上一页
            {
                if (PageIndex <= 0) return;
                PageIndex = PageIndex -1;
                OnPageChanged(EventArgs.Empty);
            }
    也可一个imgbtn_Click Button btn= sender as Button
    http://topic.csdn.net/u/20100302/09/9a6bd89a-019c-4fc6-9a4d-c30501d35ec5.html