静态页面
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
Width="100%" OnPageIndexChanging="GridView1_PageIndexChanging" OnRowEditing="GridView1_RowEditing" PageSize="12" AllowPaging="True" GridLines="None"> <Columns> <asp:TemplateField HeaderText=""> <ItemTemplate> <br/> <a href='<%#"NewShow.aspx?Newsid="+Eval("Newsid")%>' target="_self" title='<%#Eval("NewsTitle")%>'><%#Eval("NewsTitle").ToString().Length > 50 ? Eval("NewsTitle").ToString().Substring(0, 50) : Eval("NewsTitle")%></a> </ItemTemplate> <ItemStyle HorizontalAlign="Left" Width="500px" /> </asp:TemplateField> <asp:TemplateField HeaderText=""> <ItemTemplate> ( <%# Convert.ToDateTime(Eval("CreateDate")).ToString("yyyy-MM-dd-hh:ss")%> ) </ItemTemplate> <ItemStyle HorizontalAlign="Center" Width="150px" /> </asp:TemplateField> </Columns> <PagerSettings Visible="False" /> <RowStyle HorizontalAlign="Center" /> <HeaderStyle HorizontalAlign="Center" /> </asp:GridView> <br/> <td style="text-indent:15px; " class="style1" align=center> <center><asp:LinkButton ID="btnFirst" runat="server" OnClick="PagerButtonClick" Visible="false" Enabled="false" >首页</asp:LinkButton> <asp:LinkButton ID="btnPrev" runat="server" OnClick="PagerButtonClick" Visible="false" Enabled="false">上一页</asp:LinkButton> <asp:LinkButton ID="btnNext" runat="server" OnClick="PagerButtonClick" Visible="false" Enabled="false">下一页</asp:LinkButton> <asp:LinkButton ID="btnLast" runat="server" OnClick="PagerButtonClick" Visible="false" Enabled="false">尾页</asp:LinkButton> <%-- 到:<asp:TextBox id="txtPage" Runat="server" Width="32px"></asp:TextBox> 页<asp:Button id="btnPage" Runat="server" Width="32px" Text="Go" οnclick="btnPage_Click" style="height: 21px"></asp:Button>--%> <asp:Label ID="LblCurrentIndex" runat="server" Visible="False"></asp:Label> <asp:Label ID="LblPageCount" runat="server" Visible="False"></asp:Label> <asp:Label ID="LblPageSize" runat="server" Visible="false"></asp:Label> <asp:Label ID="LblRecordCount" runat="server" Visible="False"></asp:Label></center> </td>
后台代码
using System;
using System.Collections;using System.Configuration;using System.Data;using System.Linq;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.HtmlControls;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Xml.Linq;public partial class News : System.Web.UI.Page
{DBHelper db = new DBHelper();
Hashtable ht = new Hashtable();protected void Page_Load(object sender, EventArgs e)
{ if (!IsPostBack) { BindGirdView();}
} public void BindGirdView() { DataTable dt = db.GetDataTable("select NewsId,NewsTitle,NewsContents,CreateDate from tblNews order by CreateDate DESC", ht); GridView1.DataSource = dt; GridView1.DataBind(); if (dt != null) { int count = dt.Rows.Count; GridViewPagination(count); } else { GridViewPagination(0); }}
#region 分页控件显示
/// <summary>
/// 分页控件显示 /// </summary> /// <param name="RowsCount"></param> private void GridViewPagination(int RowsCount) { LblCurrentIndex.Text = "第 " + (GridView1.PageIndex + 1).ToString() + " 页"; LblPageCount.Text = "共 " + GridView1.PageCount.ToString() + " 页"; LblRecordCount.Text = "总共 " + RowsCount.ToString() + " 条"; LblPageSize.Text = "每页 " + GridView1.PageSize + " 条"; if (RowsCount == 0) { SetPagerControlStyle(false, false, false); } else if (GridView1.PageCount == 1) { SetPagerControlStyle(true, false, true); } else { SetPagerControlStyle(true, true, true); if (GridView1.PageIndex == 0) { btnFirst.Enabled = false; btnPrev.Enabled = false;}
else if (GridView1.PageIndex == (GridView1.PageCount - 1)) { btnNext.Enabled = false; btnLast.Enabled = false; } }// 计算页码
btnFirst.CommandName = "1"; btnPrev.CommandName = (GridView1.PageIndex == 0 ? "1" : GridView1.PageIndex.ToString()); btnNext.CommandName = (GridView1.PageCount == 1 ? GridView1.PageCount.ToString() : (GridView1.PageIndex + 2).ToString()); btnLast.CommandName = GridView1.PageCount.ToString(); }private void SetPagerControlStyle(bool btnVisible, bool btnEnable, bool lblVisible)
{ btnFirst.Visible = btnVisible; btnPrev.Visible = btnVisible; btnNext.Visible = btnVisible; btnLast.Visible = btnVisible;btnFirst.Enabled = btnEnable;
btnPrev.Enabled = btnEnable; btnNext.Enabled = btnEnable; btnLast.Enabled = btnEnable;LblCurrentIndex.Visible = lblVisible;
LblPageCount.Visible = lblVisible; LblRecordCount.Visible = lblVisible; LblPageSize.Visible = lblVisible; }protected void PagerButtonClick(object sender, EventArgs e)
{ GridView1.PageIndex = Convert.ToInt32(((LinkButton)sender).CommandName) - 1; BindGirdView(); }#endregion
protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e) { GridView1.PageIndex = e.NewPageIndex; BindGirdView(); } protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e) { Label olabel; if (e.Row.RowType == DataControlRowType.DataRow) { olabel = (Label)e.Row.Cells[0].FindControl("lblNo"); olabel.Text = Convert.ToString(e.Row.RowIndex + 1); } } protected void GridView1_PreRender(object sender, EventArgs e) { foreach (GridViewRow row in GridView1.Rows) { row.Attributes.Add("onmouseover", "c=this.style.backgroundColor;this.style.backgroundColor='#aabbbb';"); row.Attributes.Add("onmouseout", "this.style.backgroundColor=c;"); //de4ec5 } }
}