为什么我的按钮需要点击两次才执行事件?
一个分页的跳转按钮,第一次点击只执行PAGE_LOAD,点第二次才执行事件.
private void Page_Load(object sender, System.EventArgs e)
{
if(!Page.IsPostBack)
{
System.Data.DataTable allList = (new BLL.Item()).ViewItemList(1).Tables[0];
PagedDataSource objPage=new PagedDataSource();//创建分页类
objPage.DataSource=allList.DefaultView ;//设置数据源
objPage.AllowPaging=true;
objPage.PageSize=5;
if(Request.QueryString["Page"]!=null)
{
CurPage=Convert.ToInt32(Request.QueryString["Page"]);
CurPage=Math.Min(CurPage,objPage.PageCount);
CurPage=Math.Max(CurPage,1);
}
else
CurPage=1;
objPage.CurrentPageIndex=CurPage-1;
TotalPage=objPage.PageCount;
Tnum=objPage.DataSourceCount;
EachPage=objPage.Count;
lblCurPage.Text="第 "+CurPage.ToString()+" / "+TotalPage.ToString()+" 页";
lblTnum.Text="共: " +Tnum+" 条记录";
lblEachPage.Text="每页有: "+EachPage.ToString()+" 条记录";
if(objPage.CurrentPageIndex!=0)
lnkFirst.NavigateUrl=Request.CurrentExecutionFilePath+"?Page="+Convert.ToString(1);
if(objPage.CurrentPageIndex!=TotalPage-1)
lnkLast.NavigateUrl=Request.CurrentExecutionFilePath+"?Page="+Convert.ToString(TotalPage);
if(!objPage.IsFirstPage)
lnkPrev.NavigateUrl=Request.CurrentExecutionFilePath+"?Page="+Convert.ToString(CurPage-1);
if(!objPage.IsLastPage)
lnkNext.NavigateUrl=Request.CurrentExecutionFilePath+"?Page="+Convert.ToString(CurPage+1);
reItemList.DataSource= objPage;
reItemList.DataBind();
}
}
private void btnPage_Click(object sender, System.EventArgs e)
{
int PageNum=0;
if( !Request.Form["txtPage"].Equals("") )
PageNum=Convert.ToInt32(Request.Form["txtPage"]);
if(PageNum<=0 || PageNum>TotalPage)
Response.Redirect(Request.CurrentExecutionFilePath+"?Page="+Convert.ToString(1));
else
Response.Redirect(Request.CurrentExecutionFilePath+"?Page="+Convert.ToString(PageNum));
}