62,266
社区成员
发帖
与我相关
我的任务
分享

<td style="width: 150px">
<asp:Button ID="btnFirst" runat="server" OnClick="Page_Click" Text="首 页" Width="71px" />
<asp:Button ID="btnPrevious" runat="server" Height="24px" OnClick="Page_Click" Text="上一页"
Width="71px" /></td>
<td colspan="2">
共<asp:Label ID="lblRecorderCount" runat="server" ForeColor="Lime"></asp:Label>条记录
第
<asp:Label ID="lblPageIndex" runat="server" ForeColor="Red"></asp:Label>
/<asp:Label ID="lblPageCount" runat="server" ForeColor="Lime"></asp:Label>页 每页<asp:Label
ID="lblPageSize" runat="server" ForeColor="Lime"></asp:Label> 条 转到<asp:DropDownList
ID="dllPage" runat="server" AutoPostBack="True" Font-Size="12px" OnSelectedIndexChanged="dllPage_SelectedIndexChanged"
Width="48px">
</asp:DropDownList>页</td>
<td style="width: 150px">
<asp:Button ID="btnNext" runat="server" Height="24px" OnClick="Page_Click" Text="下一页"
Width="71px" />
<asp:Button ID="btnLast" runat="server" Height="24px" OnClick="Page_Click" Text="最后一页"
Width="71px" /></td> MyProject.BLL.news newsBll = new MyProject.BLL.news();
//MyProject.Model.news newsMold = new MyProject.Model.news();
int PageSize = 5; //每页5条记录
int PageIndex = 1; //第一页
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
ViewState["PageIndex"] = PageIndex; //页的索引
ViewState["PageCount"] = newsBll.Count() / PageSize; //总共页数
PageState();
DataNews();
}
}
protected void DataNews()
{
ViewState["PageCount"] = newsBll.Count() / PageSize;
PageIndex = (int)ViewState["PageIndex"];
this.lblPageCount.Text = ViewState["PageCount"].ToString();
this.lblPageIndex.Text = PageIndex.ToString();
this.lblPageSize.Text = PageSize.ToString();
this.lblRecorderCount.Text = newsBll.Count().ToString();
this.dllPage.Items.Clear(); //清除所有列表
for (int i = 0; i < (int)ViewState["PageCount"]; i++) //重新添加列表
{
int page = i + 1;
ListItem list = new ListItem(page.ToString(), page.ToString());
dllPage.Items.Add(list);
}
//数据绑定
DataSet dsNews = newsBll.GetList(PageSize, PageIndex, "");
this.dlstTest.DataSource = dsNews.Tables[0].DefaultView;
this.DataBind();
}
//翻页
protected void Page_Click(object sender, EventArgs e)
{
Button btnPage = (Button)sender;
switch (btnPage.ID)
{
case "btnFirst":
ViewState["PageIndex"] = 1;
break;
case "btnPrevious":
ViewState["PageIndex"] = (int)ViewState["PageIndex"] - 1;
break;
case "btnNext":
ViewState["PageIndex"] = (int)ViewState["PageIndex"] + 1;
break;
case "btnLast":
ViewState["PageIndex"] = ViewState["PageCount"];
break;
}
PageState();
DataNews();
}
//判断翻页的状态
protected void PageState()
{
this.btnFirst.Enabled = true;
this.btnPrevious.Enabled = true;
this.btnLast.Enabled = true;
this.btnNext.Enabled = true;
if ((int)ViewState["PageIndex"] == 1)
{
this.btnFirst.Enabled = false;
this.btnPrevious.Enabled = false;
}
if ((int)ViewState["PageIndex"] == (int)ViewState["PageCount"])
{
this.btnLast.Enabled = false;
this.btnNext.Enabled = false;
}
}
//选择第几页
protected void dllPage_SelectedIndexChanged(object sender, EventArgs e)
{
ViewState["PageIndex"] = Convert.ToInt32(dllPage.SelectedValue);
PageIndex = (int)ViewState["PageIndex"];
this.lblPageIndex.Text = PageIndex.ToString();
DataSet dsNews = newsBll.GetList(PageSize, PageIndex, "");
this.dlstTest.DataSource = dsNews.Tables[0].DefaultView;
this.DataBind();
PageState();
}