在ASP.Net內中,如何做到分頁
我不只一次地被別人問起,如何在ASP.Net實現分頁功能。我實在不愿意回答這個問題。因為在ASP.Net中實現分頁,實在是太簡單了,簡單到你一看到程序就會去氣得跳樓,呵呵要發表感嘆,為什么這個東東不早出來。
在以住的WEB技術中,我們要做到分頁,經常是一長串代碼才能搞定它,而且每用一個頁面,就要重寫一次,煩的要命。但是在ASP.Net中借助DataGrid控件,我們分頁程序可以輕松搞定,需要的只是對DataGrid控件做一些設定。我們還是借助一個程序來看:)
<% @ Page Language="C#" %> <% @ Import Namespace="System.Data" %> <% @ Import Namespace="System.Data.ADO" %> <Script Language="C#" Runat="Server"> public void Page_Load(Object src,EventArgs e) { //聯結語句 string MyConnString = "Driver={Microsoft Access Driver (*.mdb)}; DBQ=c:/test/test.mdb;"; string strComm = "select * from UserList order by id";
//打開一個聯結 ADOConnection MyConnection = new ADOConnection(MyConnString);
//打開兩個DataSetCommand ADODataSetCommand MyComm = new ADODataSetCommand(strComm,MyConnection);
DataSet MyDataSet = new DataSet();
//把UserList,BookList表存入DataSet MyComm.FillDataSet(MyDataSet,"UserList");
DataGrid1.DataSource = MyDataSet.Tables["UserList"].DefaultView; DataGrid1.DataBind();
} </script> <html> <head> <title></title> </head> <body> <form runat="server"> <ASP:DataGrid id="DataGrid1" runat="server" BorderColor="black" BorderWidth="1" GridLines="Both" CellPadding="3" CellSpacing="0" Font-Name="Verdana" Font-Size="8pt" HeaderStyle-BackColor="#aaaadd" AlternatingItemStyle-BackColor="#eeeeee" /> </form> </body> </html>
它的顯示結果為:
圖11-1
大家可以看到在這個UserList表中的11條數據全都出來了,沒有分頁。
下面我們小改一下DataGrid控件的屬性。加上
AllowPaging="True" PageSize="5" PagerStyle-HorizontalAlign="Right"
再看看:
圖11-2
看看圖片的最下面,是不是多了,是不是,這就表示分頁啦,我們去按那個標簽就可以看到下一頁的情況:)
圖11-4
這一切是不是太簡單了。呵呵。他們的來源只是我加了那三個屬性。其實只要一個AllowPaging就行了。
AllowPaging是指允許分頁,這個是最主要的。有了它,我們才能分頁。
PageSize是指定每頁顯示的記錄數,如果不寫,就會默認為10條。
PagerStyle-HorizontalAlign是指定分面顯示的定位,默認是Left。
全部代碼是:
<ASP:DataGrid id="DataGrid1" runat="server" AllowPaging="True" PageSize="5" PagerStyle-HorizontalAlign="Right" BorderColor="black" BorderWidth="1" GridLines="Both" CellPadding="3" CellSpacing="0" Font-Name="Verdana" Font-Size="8pt" HeaderStyle-BackColor="#aaaadd" AlternatingItemStyle-BackColor="#eeeeee" />
是不是很簡單。呵呵。
注意寫這個時不要忘記<form>了,不然你的頁是能顯示,但是不能翻,呵呵。因為這是需要提交的:)
下一節我們再講解更詳細的內容,呵呵,主要是考慮到圖片太多了。瀏覽速度會變慢。
|