302班

          java突擊隊
          posts - 151, comments - 74, trackbacks - 0, articles - 14
            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

          GridView事件應用

          Posted on 2007-07-16 12:15 停留的風 閱讀(1177) 評論(0)  編輯  收藏 所屬分類: .NET技巧特輯

          GridView“GridView1”激發(fā)了未處理的事件“PageIndexChanging”。
          說明: 執(zhí)行當前 Web 請求期間,出現未處理的異常。請檢查堆棧跟蹤信息,以了解有關該錯誤以及代碼中導致錯誤的出處的詳細信息。

          異常詳細信息: System.Web.HttpException: GridView“GridView1”激發(fā)了未處理的事件“PageIndexChanging”。

          源錯誤:

          執(zhí)行當前 Web 請求期間生成了未處理的異常。可以使用下面的異常堆棧跟蹤信息確定有關異常原因和發(fā)生位置的信息。 

          堆棧跟蹤:
          [HttpException (0x80004005): GridView“GridView1”激發(fā)了未處理的事件“PageIndexChanging”。]
             System.Web.UI.WebControls.GridView.OnPageIndexChanging(GridViewPageEventArgs e) +324
             System.Web.UI.WebControls.GridView.HandlePage(Int32 newPage) +110
             System.Web.UI.WebControls.GridView.HandleEvent(EventArgs e, Boolean causesValidation, String validationGroup) +516
             System.Web.UI.WebControls.GridView.RaisePostBackEvent(String eventArgument) +213
             System.Web.UI.WebControls.GridView.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +31
             System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +32
             System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +244
             System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +3837
          --------------------------------------------------------------------------------
          版本信息: Microsoft .NET Framework 版本:2.0.50727.42; ASP.NET 版本:2.0.50727.42

          ASP.NET的CS代碼:
          using System;
          using System.Data;
          using System.Data.SqlClient;
          using System.Configuration;
          using System.Web;
          using System.Web.Security;
          using System.Web.UI;
          using System.Web.UI.WebControls;
          using System.Web.UI.WebControls.WebParts;
          using System.Web.UI.HtmlControls;
          using System.Collections;

          public partial class _Default : System.Web.UI.Page
          {
              string zhumin = ConfigurationSettings.AppSettings["ConnectionString"].ToString();

              protected void Page_Load(object sender, EventArgs e)
              {

                  if (!Page.IsPostBack)
                  {
                      BindDataGrid();
                      IsFirstLastPage();
                     
                  }

              }
              private void BindDataGrid()
              {
                  SqlConnection MyConnection = new SqlConnection(zhumin);
                  String cmdText = "SELECT * FROM Orders";
                  SqlDataAdapter da = new SqlDataAdapter(cmdText,MyConnection);
                  MyConnection.Open();
                  DataSet ds = new DataSet();
                  da.Fill(ds);
                  GridView1.DataSource = ds;
                  GridView1.DataBind();
                  MyConnection.Close();
              }

           

           
              protected void GridView1_PageIndexChanged(object source,System.Web.UI.WebControls.DataGridPageChangedEventArgs e)
              {

                  GridView1.PageIndex = e.NewPageIndex;
                  BindDataGrid();      


              }

           

              protected void PageCut_Click(object sender, EventArgs e)
              {
                  String commangArg = ((LinkButton)sender).CommandArgument;

                  switch (commangArg)
                  {
                      case "First":
                          {
                              GridView1.PageIndex = 0;
                              break;
                          }
                      case "Prev":
                          {
                              GridView1.PageIndex = (int)Math.Max(0,GridView1.PageIndex - 1);
                              break;
                          }
                      case "Next":
                          {
                              GridView1.PageIndex = (int)Math.Min(GridView1.PageCount - 1, GridView1.PageIndex + 1);
                              break;
                          }
                      case "Last":
                          {
                              GridView1.PageIndex = GridView1.PageCount - 1;
                              break;
                          }
                      default:
                          {
                              break;
                          }
                  }
                  BindDataGrid();
                  IsFirstLastPage();

              }

              private void IsFirstLastPage()
              {
                  if (GridView1.PageCount > 0)
                  {
                      if (GridView1.PageCount != 1)
                      {
                          if (GridView1.PageIndex == 0)
                          {
                              LinkButton2.Enabled = false;
                          }
                          else
                          {
                              LinkButton2.Enabled = true;
                          }
                          if (GridView1.PageIndex == GridView1.PageCount - 1)
                          {
                              LinkButton3.Enabled = false;
                          }
                          else
                          {
                              LinkButton3.Enabled = true;
                          }
                      }
                      else
                      {
                         LinkButton2.Enabled = false;
                          LinkButton3.Enabled = false;
                      }
                      }
                  else
                  {
                      LinkButton1.Enabled = false;
                      LinkButton2.Enabled = false;
                      LinkButton3.Enabled = false;
                      LinkButton4.Enabled = false;
                  }

                  }
              }

          最后是我的ASPX代碼:
          <%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" Inherits="_Default" %>

          <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

          <html xmlns="http://www.w3.org/1999/xhtml" >
          <head runat="server">
              <title>無標題頁</title>
          </head>
          <body>
              <form id="form1" runat="server">
              <div>
                  &nbsp;
                 <center>
                      <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" BackColor="Yellow"
                          ForeColor="Black" Width="372px"  AllowPaging="True">
                          <Columns>
                              <asp:BoundField DataField="OrderID" HeaderText="員工ID" />
                              <asp:BoundField DataField="EmployeeID" HeaderText="顧客ID" />
                              <asp:BoundField DataField="ShipVia" HeaderText="ShipID" />
                          </Columns>
                      </asp:GridView>
                      </center>
                  <br />
                  <br />
                  <center style="text-align: left">
                      &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
                      &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;
                      <asp:LinkButton ID="LinkButton1" runat="server" CommandArgument="First">首頁</asp:LinkButton>
                      &nbsp;&nbsp; &nbsp;&nbsp;
                      <asp:LinkButton ID="LinkButton2" runat="server" CommandArgument="Prev">上一頁</asp:LinkButton>
                      &nbsp; &nbsp;
                      <asp:LinkButton ID="LinkButton3" runat="server" CommandArgument="Next">下一頁</asp:LinkButton>
                      &nbsp;&nbsp;
                      <asp:LinkButton ID="LinkButton4" runat="server" CommandArgument="Last">尾頁</asp:LinkButton></center>
                  </div>
                
              </form>
          </body>
          </html>

          主站蜘蛛池模板: 青阳县| 北宁市| 津市市| 大宁县| 穆棱市| 天气| 昭平县| 民县| 浦县| 龙山县| 井研县| 特克斯县| 洱源县| 五指山市| 阳西县| 宜阳县| 嘉善县| 禄劝| 宜章县| 绥滨县| 环江| 宁津县| 新宾| 南雄市| 徐州市| 祁阳县| 阿合奇县| 齐齐哈尔市| 台安县| 桑日县| 万荣县| 博白县| 确山县| 益阳市| 资阳市| 中宁县| 察哈| 陇川县| 彭州市| 富平县| 井研县|