首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

第一次用AspNetPager1控件(只是显示初始的size=3,无论如何翻页页面只是刷新但是不翻页。)希望有同样经历的帮忙解决

2012-01-29 
第一次用AspNetPager1控件(只是显示初始的size3,无论怎么翻页页面只是刷新但是不翻页。)希望有同样经历的

第一次用AspNetPager1控件(只是显示初始的size=3,无论怎么翻页页面只是刷新但是不翻页。)希望有同样经历的帮忙解决
using   System;
using   System.Data;
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.Data.SqlClient;

public   partial   class   _Default   :   System.Web.UI.Page
{
        DataSet   ds;
        SqlDataAdapter   dr;
        SqlCommand   com;
        protected   void   Page_Load(object   sender,   EventArgs   e)
        {
                if   (!IsPostBack)
                {
                        SqlConnection   con   =   new   SqlConnection( "server=localhost;database=Templit;uid=sa;pwd= 'sa ' ");
                        con.Open();
                        com   =   new   SqlCommand();
                        com.Connection   =   con;
                        com.CommandText   =   "select   count(*)   from   message ";
                        AspNetPager1.AlwaysShow   =   true;
                        AspNetPager1.PageSize   =   3;
                        AspNetPager1.RecordCount   =   (int)com.ExecuteScalar();
                        con.Close();
                        DataListDataBind();
                }
        }
        private   void   DataListDataBind()
        {
                SqlConnection   con   =   new   SqlConnection( "server=localhost;database=Templit;uid=sa;pwd= 'sa ' ");
                dr   =   new   SqlDataAdapter( "select   *   from   message ",   con);
                ds   =   new   DataSet();
                dr.Fill(ds,   AspNetPager1.PageSize   *   (AspNetPager1.CurrentPageIndex   -   1),   AspNetPager1.PageSize,   "message ");
                DataList1.DataSource   =   ds.Tables[ "message "];
                DataList1.DataBind();

        }

        protected   void   AspNetPager1_PageChanging(object   src,   Wuqi.Webdiyer.PageChangingEventArgs   e)


        {
                AspNetPager1.CurrentPageIndex   =   e.NewPageIndex;
                DataListDataBind();
        }
}

[解决办法]
应该编写 PageChanged事件处理程序,而不是PageChanging,另外6.0版以后不需要在PageChanged事件处理程序中设置CurrentPageIndex的值了,控件会自动设置,把上面PageChanging事件处理程序改为
protected void AspNetPager1_PageChanged(object src, EventArgs e)
{
DataListDataBind();
}
然后把它和PageChanged事件关联起来就行了,取消和PageChanging事件关联。

热点排行