DATAGRID分页,增加首页、最后一页(源码)
2007-01-10 17:21:20 来源:WEB开发网1 PRivate void PageCut_Click(Object sender,System.EventArgs e)
2 {
3 //取页码跳转标志(上一页,下一页)
4 String commangArg = ((LinkButton)sender).CommandArgument ;
5 switch(commangArg)
6 {
7 //第一页
8 case "First":
9 {
10 DG_ZONE_CONTENT.CurrentPageIndex = 0;
11 break;
12 }
13 //上一页
14 case "Prev":
15 {
16 DG_ZONE_CONTENT.CurrentPageIndex = (int)Math.Max(0,DG_ZONE_CONTENT.CurrentPageIndex - 1);
17 break;
18 }
19 //下一页
20 case "Next":
21 {
22 DG_ZONE_CONTENT.CurrentPageIndex = (int)Math.Min(DG_ZONE_CONTENT.PageCount-1,DG_ZONE_CONTENT.CurrentPageIndex +1);
23 break;
24 }
25 //最后一页
26 case "Last":
27 {
28 DG_ZONE_CONTENT.CurrentPageIndex = DG_ZONE_CONTENT.PageCount -1;
29 break;
30 }
31 default:{break;}
32 }
33
34 this.Binder(this.TXT_SEARCH_NAME.Text.Trim().ToUpper(),this.TXT_SEARCH_CD.Text.Trim().ToUpper());
35 //控制页面导向按钮的可见性
36 IsFirstLastPage();
37 }
38 /**//// <summary>
39 /// 控制页面导向按钮的可见性
40 /// </summary>
41 private void IsFirstLastPage()
42 {
43 if(DG_ZONE_CONTENT.PageCount > 0)
44 {
45 PageFirst.Visible = true;
46 PageLast.Visible = true;
47 PageNext.Visible = true;
48 PagePrev.Visible = true;
49
50 if(DG_ZONE_CONTENT.PageCount != 1)
51 {
52 if(DG_ZONE_CONTENT.CurrentPageIndex == 0)
53 {
54 PagePrev.Enabled = false;
55 }
56 else
57 {
58 PagePrev.Enabled = true;
59 }
60 if(DG_ZONE_CONTENT.CurrentPageIndex == DG_ZONE_CONTENT.PageCount -1)
61 {
62 PageNext.Enabled = false;
63 }
64 else
65 {
66 PageNext.Enabled = true;
67 }
68 }
69 else
70 {
71 PagePrev.Enabled = false;
72 PageNext.Enabled = false;
73 }
74 }
75 else
76 {
77 PageFirst.Visible = false;
78 PageLast.Visible = false;
79 PageNext.Visible = false;
80 PagePrev.Visible = false;
81
82 }
83 }
84 private void Binder(string zone,string city)
85 {
86 bl = new ZoneConten();
87 DataTable dt = new DataTable();
88 if(zone==""&&city=="")
89 {
90 dt= bl.ZoneRev("ZONE_INFO");
91 }
92 else
93 {
94 dt = bl.zoneSea(zone,city);
95 }
96 this.DG_ZONE_CONTENT.DataSource = dt;
97 this.DG_ZONE_CONTENT.DataBind();
98 if(dt!=null)
99 {
100 if(dt.Rows.Count>0)
101 {
102 int nTotalCode = dt.Rows.Count;
103 //int nTotalPage = nTotalCode/10;
104 // if(nTotalCode%10>0)
105 // {nTotalPage=nTotalPage+1;}
106 // int a = 0;
107 //this.LBL_TOTAL.Text=nTotalPage.ToString();
108 this.LBL_TOTAL.Text = nTotalCode.ToString();
109 int nNow = this.DG_ZONE_CONTENT.CurrentPageIndex+1;
110 this.LBL_NOW.Text=nNow.ToString();
111 }
112 }
113 else
114 {
115 this.LBL_TOTAL.Text = "0";
116 this.LBL_NOW.Text="1";
117 }
118 this.IsFirstLastPage();
119 }
120
<asp:datagrid id="DG_ZONE_CONTENT" runat="server" Width="792px" GridLines="Horizontal" AutoGenerateColumns="False"
AllowPaging="True" BorderColor="#CC9966" BorderStyle="None" BorderWidth="1px" BackColor="White"
CellPadding="4">
<SelectedItemStyle Font-Bold="True" ForeColor="#663399" BackColor="#FFCC66"></SelectedItemStyle>
<ItemStyle ForeColor="#330099" BackColor="White"></ItemStyle>
<HeaderStyle Font-Bold="True" ForeColor="#FFFFCC" BackColor="#99CCFF"></HeaderStyle>
<FooterStyle ForeColor="#330099" BackColor="#FFFFCC"></FooterStyle>
<Columns>
<asp:TemplateColumn HeaderText="行区代码">
<HeaderStyle Width="60px"></HeaderStyle>
<ItemTemplate>
<%#DataBinder.Eval(Container,"DataItem.ZONE_CD") %>
<asp:TextBox id=TXT_ZONE_CD_VIS runat="server" Width="58px" Height="20px" Visible="false" text='<%#DataBinder.Eval(Container,"DataItem.ZONE_CD")%>'>
</asp:TextBox>
</ItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn HeaderText="行区名">
<HeaderStyle Width="100px"></HeaderStyle>
<ItemTemplate>
<%# DataBinder.Eval(Container,"DataItem.AERA_NAME")%>
<asp:TextBox id=TXT_ZONE_NAME_VIS runat="server" Width="164px" Visible="False" Text='<%# DataBinder.Eval(Container,"DataItem.AERA_NAME")%>'>
</asp:TextBox>
</ItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn HeaderText="城市代码">
<HeaderStyle Width="200px"></HeaderStyle>
<ItemTemplate>
<%# DataBinder.Eval(Container,"DataItem.CITY")%>
<asp:TextBox id=TXT_ZONE_CITY_VIS runat="server" Width="135px" Visible="False" Text='<%# DataBinder.Eval(Container,"DataItem.CITY")%>'>
</asp:TextBox>
</ItemTemplate>
</asp:TemplateColumn>
<asp:ButtonColumn Text="修改" CommandName="Select">
<HeaderStyle Width="100px"></HeaderStyle>
</asp:ButtonColumn>
<asp:ButtonColumn Text="删除" CommandName="Delete">
<HeaderStyle Width="50px"></HeaderStyle>
</asp:ButtonColumn>
</Columns>
<PagerStyle Visible="false" HorizontalAlign="Center" ForeColor="#330099" BackColor="#FFFFCC"></PagerStyle>
</asp:datagrid>
</td>
</tr>
<tr>
<td>
<asp:linkbutton id="PageFirst" Runat="server" CSSClass="Normal" Text="首页" CommandArgument="First"></asp:linkbutton>
<asp:linkbutton id="PagePrev" Runat="server" CssClass="Normal" Text="上一页" CommandArgument="Prev"></asp:linkbutton>
<asp:linkbutton id="PageNext" runat="server" CssClass="Normal" Text="下一页" CommandArgument="Next"></asp:linkbutton>
<asp:linkbutton id="PageLast" Runat="server" CssClass="Normal" Text="最后一页" CommandArgument="Last"></asp:linkbutton>
共<asp:label id="LBL_TOTAL" runat="server">Label</asp:label> 条记录,当前第
<asp:label id="LBL_NOW" runat="server">Label</asp:label> 页
</td>
</tr>
http://www.cnblogs.com/semye/archive/2007
赞助商链接