分页控件:
PageConten.ascx
1
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="PageConten.ascx.cs" Inherits="test_01.PageConten" %>
2
<br />
3
总共有 <%=row_count %> 页
4
<br />
5
总共有 <%=rows %> 行记录
6
<%=page_foot %>
7
<br />
8
当前是第 <%=pageIndex%> 页
9
<input type="hidden" id="hidSub" name="hidSub" value="0" />
10
<script language="javascript" type="text/javascript">
11
function selectPage()
12
{
13
var id = document.getElementById("sltPage").value;
14
submit(id);
15
}
16
function bindSlt(row_count)
17
{
18
for(var i=1;i<=row_count;i++)
19
{
20
document.getElementById("sltPage").options.add(new Option(i,i));
21
}
22
}
23
function submit(page)
24
{
25
document.getElementById("hidSub").value = page;
26
document.forms[0].submit();
27
}
28
</script>
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="PageConten.ascx.cs" Inherits="test_01.PageConten" %>2
<br />3
总共有 <%=row_count %> 页4
<br />5
总共有 <%=rows %> 行记录6
<%=page_foot %>7
<br />8
当前是第 <%=pageIndex%> 页9
<input type="hidden" id="hidSub" name="hidSub" value="0" />10
<script language="javascript" type="text/javascript">11
function selectPage()12
{13
var id = document.getElementById("sltPage").value;14
submit(id);15
}16
function bindSlt(row_count)17
{18
for(var i=1;i<=row_count;i++)19
{20
document.getElementById("sltPage").options.add(new Option(i,i));21
}22
}23
function submit(page)24
{25
document.getElementById("hidSub").value = page;26
document.forms[0].submit();27
}28
</script>
PageConten.ascx.cs
1
using System;
2
using System.Data;
3
using System.Configuration;
4
using System.Collections;
5
using System.Web;
6
using System.Web.Security;
7
using System.Web.UI;
8
using System.Web.UI.WebControls;
9
using System.Web.UI.WebControls.WebParts;
10
using System.Web.UI.HtmlControls;
11
using System.Text;
12
13
namespace test_01
14
{
15
public partial class PageConten : System.Web.UI.UserControl
16
{
17
public string page_foot;
18
public int row_count = 0;
19
public string pageIndex;
20
public int page_info; //每页要显示多少页码出来
21
public int rows; //总行数
22
public int page_rows; //每页分多少行
23
public int isRequest; //是否带url参数,1为带,2为不带
24
public string pageName; //页面名称,去掉.aspx的部分
25
26
protected void Page_Load(object sender, EventArgs e)
27
{
28
row_count = rows / page_rows;
29
int indexPage = 0; //当前页
30
if (IsPostBack)
31
{
32
indexPage = int.Parse("0" + Request["hidSub"]);
33
if (indexPage == 0)
34
{
35
pageIndex = "1";
36
}
37
else
38
{
39
pageIndex = indexPage.ToString();
40
}
41
Session["index"] = indexPage.ToString();
42
PageInfo(indexPage);
43
}
44
else
45
{
46
if (isRequest == 1)
47
{
48
indexPage = int.Parse("0" + Request["page"]);
49
if (indexPage == 0)
50
{
51
pageIndex = "1";
52
}
53
else
54
{
55
pageIndex = indexPage.ToString();
56
}
57
PageRequestInfo(indexPage);
58
}
59
else
60
{
61
indexPage = int.Parse("0" + Request["hidSub"]);
62
if (indexPage == 0)
63
{
64
pageIndex = "1";
65
}
66
else
67
{
68
pageIndex = indexPage.ToString();
69
}
70
Session["index"] = indexPage.ToString();
71
PageInfo(indexPage);
72
}
73
}
74
}
75
76
/// <summary>
77
/// 分页摸板方法1,不带url参数
78
/// </summary>
79
/// <param name="index_page">当前页</param>
80
private void PageInfo(int index_page)
81
{
82
int back_page = index_page - 1; //上一页
83
int next_page = index_page + 1; //下一页
84
int last_page; //页码能显示的最后一页
85
int j;
86
int r = page_info / 2;
87
if (index_page == 0)
88
{
89
last_page = page_info;
90
j = 1;
91
}
92
else
93
{
94
if (index_page > r)
95
{
96
if (index_page > row_count - r)
97
{
98
last_page = row_count;
99
}
100
else
101
{
102
last_page = index_page + r;
103
}
104
}
105
else
106
{
107
last_page = page_info;
108
}
109
}
110
j = last_page - (page_info - 1);
111
StringBuilder foot = new StringBuilder();
112
foot.Append("<table><tr><td>");
113
foot.Append(" ");
114
if (index_page != 1 && index_page != 0)
115
{
116
foot.Append("<a href='javascript:submit(1);' style='text-decoration:none'>[首页]</a>");
117
foot.Append("<a href='javascript:submit(" + back_page + ")' style='text-decoration:none'>[上一页]</a>");
118
}
119
else
120
{
121
foot.Append("[首页]");
122
foot.Append("[上一页]");
123
}
124
foot.Append(" ");
125
if (row_count > page_info)
126
{
127
for (int i = j; i <= last_page; i++) //----------------------总页数大于10的情况
128
{
129
if (i == 1 && index_page == 0)
130
{
131
foot.Append("[" + i + "]");
132
}
133
else
134
{
135
if (i == index_page)
136
{
137
foot.Append("[" + i + "]");
138
}
139
else
140
{
141
foot.Append("<a href='javascript:submit(" + i + ");' style='text-decoration:none'>[" + i + "]</a>");
142
}
143
}
144
foot.Append(" ");
145
}
146
}
147
else
148
{
149
for (int i = 1; i <= row_count; i++)
150
{
151
if (i == 1 && index_page == 0)
152
{
153
foot.Append("[" + i + "]");
154
}
155
else
156
{
157
if (i == index_page)
158
{
159
foot.Append("[" + i + "]");
160
}
161
else
162
{
163
foot.Append("<a href='javascript:submit(" + i + ");' style='text-decoration:none'>[" + i + "]</a>");
164
}
165
}
166
foot.Append(" ");
167
}
168
}
169
if (index_page != row_count)
170
{
171
if (index_page == 0)
172
{
173
foot.Append("<a href='javascript:submit(2);' style='text-decoration:none'>[下一页]</a>");
174
}
175
else
176
{
177
foot.Append("<a href='javascript:submit(" + next_page + ");' style='text-decoration:none'>[下一页]</a>");
178
}
179
foot.Append("<a href='javascript:submit(" + row_count + ");' style='text-decoration:none'>[尾页]</a>");
180
}
181
else
182
{
183
foot.Append("[下一页]");
184
foot.Append("[尾页]");
185
}
186
foot.Append(" ");
187
foot.Append("转到<select id='sltPage' onchange='selectPage()'>");
188
for (int i = 1; i <= row_count; i++)
189
{
190
foot.Append("<option value=" + i + ">" + i + "</option>");
191
}
192
foot.Append("</select>");
193
foot.Append("</td>");
194
foot.Append("</tr></table>");
195
page_foot = foot.ToString();
196
}
197
198
/// <summary>
199
/// 分页摸板方法2,带url参数
200
/// </summary>
201
/// <param name="indexPage">当前页</param>
202
public void PageRequestInfo(int index_page)
203
{
204
int back_page = index_page - 1; //上一页
205
int next_page = index_page + 1; //下一页
206
int last_page; //页码能显示的最后一页
207
int j;
208
int r = page_info / 2;
209
if (index_page == 0)
210
{
211
last_page = page_info;
212
j = 1;
213
}
214
else
215
{
216
if (index_page > r)
217
{
218
if (index_page > row_count - r)
219
{
220
last_page = row_count;
221
}
222
else
223
{
224
last_page = index_page + r;
225
}
226
}
227
else
228
{
229
last_page = page_info;
230
}
231
}
232
j = last_page - (page_info - 1);
233
StringBuilder foot = new StringBuilder();
234
foot.Append("<table><tr><td>");
235
foot.Append(" ");
236
if (index_page != 1 && index_page != 0)
237
{
238
foot.Append("<a href='" + pageName + ".aspx?page=1' style='text-decoration:none'>[首页]</a>");
239
foot.Append("<a href='" + pageName + ".aspx?page=" + back_page + "' style='text-decoration:none'>[上一页]</a>");
240
}
241
else
242
{
243
foot.Append("[首页]");
244
foot.Append("[上一页]");
245
}
246
foot.Append(" ");
247
if (row_count > page_info)
248
{
249
for (int i = j; i <= last_page; i++) //----------------------总页数大于10的情况
250
{
251
if (i == 1 && index_page == 0)
252
{
253
foot.Append("[" + i + "]");
254
}
255
else
256
{
257
if (i == index_page)
258
{
259
foot.Append("[" + i + "]");
260
}
261
else
262
{
263
foot.Append("<a href='" + pageName + ".aspx?page=" + i + "' style='text-decoration:none'>[" + i + "]</a>");
264
}
265
}
266
foot.Append(" ");
267
}
268
}
269
else
270
{
271
for (int i = 1; i <= row_count; i++)
272
{
273
if (i == 1 && index_page == 0)
274
{
275
foot.Append("[" + i + "]");
276
}
277
else
278
{
279
if (i == index_page)
280
{
281
foot.Append("[" + i + "]");
282
}
283
else
284
{
285
foot.Append("<a href='" + pageName + ".aspx?page=" + i + "' style='text-decoration:none'>[" + i + "]</a>");
286
}
287
}
288
foot.Append(" ");
289
}
290
}
291
if (index_page != row_count)
292
{
293
if (index_page == 0)
294
{
295
foot.Append("<a href='" + pageName + ".aspx?page=2' style='text-decoration:none'>[下一页]</a>");
296
}
297
else
298
{
299
foot.Append("<a href='" + pageName + ".aspx?page=" + next_page + "' style='text-decoration:none'>[下一页]</a>");
300
}
301
foot.Append("<a href='" + pageName + ".aspx?page=" + row_count + "' style='text-decoration:none'>[尾页]</a>");
302
}
303
else
304
{
305
foot.Append("[下一页]");
306
foot.Append("[尾页]");
307
}
308
foot.Append(" ");
309
foot.Append("转到<select id='sltPage' onchange='selectPage()'>");
310
for (int i = 1; i <= row_count; i++)
311
{
312
foot.Append("<option value=" + i + ">" + i + "</option>");
313
}
314
foot.Append("</select>");
315
foot.Append("</td>");
316
foot.Append("</tr></table>");
317
page_foot = foot.ToString();
318
}
319
}
320
}
using System;2
using System.Data;3
using System.Configuration;4
using System.Collections;5
using System.Web;6
using System.Web.Security;7
using System.Web.UI;8
using System.Web.UI.WebControls;9
using System.Web.UI.WebControls.WebParts;10
using System.Web.UI.HtmlControls;11
using System.Text;12

13
namespace test_0114
{15
public partial class PageConten : System.Web.UI.UserControl16
{17
public string page_foot;18
public int row_count = 0;19
public string pageIndex;20
public int page_info; //每页要显示多少页码出来21
public int rows; //总行数22
public int page_rows; //每页分多少行23
public int isRequest; //是否带url参数,1为带,2为不带24
public string pageName; //页面名称,去掉.aspx的部分25

26
protected void Page_Load(object sender, EventArgs e)27
{28
row_count = rows / page_rows;29
int indexPage = 0; //当前页30
if (IsPostBack)31
{32
indexPage = int.Parse("0" + Request["hidSub"]);33
if (indexPage == 0)34
{35
pageIndex = "1";36
}37
else38
{39
pageIndex = indexPage.ToString();40
}41
Session["index"] = indexPage.ToString();42
PageInfo(indexPage);43
}44
else45
{46
if (isRequest == 1)47
{48
indexPage = int.Parse("0" + Request["page"]);49
if (indexPage == 0)50
{51
pageIndex = "1";52
}53
else54
{55
pageIndex = indexPage.ToString();56
}57
PageRequestInfo(indexPage);58
}59
else60
{61
indexPage = int.Parse("0" + Request["hidSub"]);62
if (indexPage == 0)63
{64
pageIndex = "1";65
}66
else67
{68
pageIndex = indexPage.ToString();69
}70
Session["index"] = indexPage.ToString();71
PageInfo(indexPage);72
}73
}74
}75

76
/// <summary>77
/// 分页摸板方法1,不带url参数78
/// </summary>79
/// <param name="index_page">当前页</param>80
private void PageInfo(int index_page)81
{82
int back_page = index_page - 1; //上一页83
int next_page = index_page + 1; //下一页84
int last_page; //页码能显示的最后一页85
int j;86
int r = page_info / 2;87
if (index_page == 0)88
{89
last_page = page_info;90
j = 1;91
}92
else93
{94
if (index_page > r)95
{96
if (index_page > row_count - r)97
{98
last_page = row_count;99
}100
else101
{102
last_page = index_page + r;103
}104
}105
else106
{107
last_page = page_info;108
}109
}110
j = last_page - (page_info - 1);111
StringBuilder foot = new StringBuilder();112
foot.Append("<table><tr><td>");113
foot.Append(" ");114
if (index_page != 1 && index_page != 0)115
{116
foot.Append("<a href='javascript:submit(1);' style='text-decoration:none'>[首页]</a>");117
foot.Append("<a href='javascript:submit(" + back_page + ")' style='text-decoration:none'>[上一页]</a>");118
}119
else120
{121
foot.Append("[首页]");122
foot.Append("[上一页]");123
}124
foot.Append(" ");125
if (row_count > page_info)126
{127
for (int i = j; i <= last_page; i++) //----------------------总页数大于10的情况128
{129
if (i == 1 && index_page == 0)130
{131
foot.Append("[" + i + "]");132
}133
else134
{135
if (i == index_page)136
{137
foot.Append("[" + i + "]");138
}139
else140
{141
foot.Append("<a href='javascript:submit(" + i + ");' style='text-decoration:none'>[" + i + "]</a>");142
}143
}144
foot.Append(" ");145
}146
}147
else148
{149
for (int i = 1; i <= row_count; i++)150
{151
if (i == 1 && index_page == 0)152
{153
foot.Append("[" + i + "]");154
}155
else156
{157
if (i == index_page)158
{159
foot.Append("[" + i + "]");160
}161
else162
{163
foot.Append("<a href='javascript:submit(" + i + ");' style='text-decoration:none'>[" + i + "]</a>");164
}165
}166
foot.Append(" ");167
}168
}169
if (index_page != row_count)170
{171
if (index_page == 0)172
{173
foot.Append("<a href='javascript:submit(2);' style='text-decoration:none'>[下一页]</a>");174
}175
else176
{177
foot.Append("<a href='javascript:submit(" + next_page + ");' style='text-decoration:none'>[下一页]</a>");178
}179
foot.Append("<a href='javascript:submit(" + row_count + ");' style='text-decoration:none'>[尾页]</a>");180
}181
else182
{183
foot.Append("[下一页]");184
foot.Append("[尾页]");185
}186
foot.Append(" ");187
foot.Append("转到<select id='sltPage' onchange='selectPage()'>");188
for (int i = 1; i <= row_count; i++)189
{190
foot.Append("<option value=" + i + ">" + i + "</option>");191
}192
foot.Append("</select>");193
foot.Append("</td>");194
foot.Append("</tr></table>");195
page_foot = foot.ToString();196
}197

198
/// <summary>199
/// 分页摸板方法2,带url参数200
/// </summary>201
/// <param name="indexPage">当前页</param>202
public void PageRequestInfo(int index_page)203
{204
int back_page = index_page - 1; //上一页205
int next_page = index_page + 1; //下一页206
int last_page; //页码能显示的最后一页207
int j;208
int r = page_info / 2;209
if (index_page == 0)210
{211
last_page = page_info;212
j = 1;213
}214
else215
{216
if (index_page > r)217
{218
if (index_page > row_count - r)219
{220
last_page = row_count;221
}222
else223
{224
last_page = index_page + r;225
}226
}227
else228
{229
last_page = page_info;230
}231
}232
j = last_page - (page_info - 1);233
StringBuilder foot = new StringBuilder();234
foot.Append("<table><tr><td>");235
foot.Append(" ");236
if (index_page != 1 && index_page != 0)237
{238
foot.Append("<a href='" + pageName + ".aspx?page=1' style='text-decoration:none'>[首页]</a>");239
foot.Append("<a href='" + pageName + ".aspx?page=" + back_page + "' style='text-decoration:none'>[上一页]</a>");240
}241
else242
{243
foot.Append("[首页]");244
foot.Append("[上一页]");245
}246
foot.Append(" ");247
if (row_count > page_info)248
{249
for (int i = j; i <= last_page; i++) //----------------------总页数大于10的情况250
{251
if (i == 1 && index_page == 0)252
{253
foot.Append("[" + i + "]");254
}255
else256
{257
if (i == index_page)258
{259
foot.Append("[" + i + "]");260
}261
else262
{263
foot.Append("<a href='" + pageName + ".aspx?page=" + i + "' style='text-decoration:none'>[" + i + "]</a>");264
}265
}266
foot.Append(" ");267
}268
}269
else270
{271
for (int i = 1; i <= row_count; i++)272
{273
if (i == 1 && index_page == 0)274
{275
foot.Append("[" + i + "]");276
}277
else278
{279
if (i == index_page)280
{281
foot.Append("[" + i + "]");282
}283
else284
{285
foot.Append("<a href='" + pageName + ".aspx?page=" + i + "' style='text-decoration:none'>[" + i + "]</a>");286
}287
}288
foot.Append(" ");289
}290
}291
if (index_page != row_count)292
{293
if (index_page == 0)294
{295
foot.Append("<a href='" + pageName + ".aspx?page=2' style='text-decoration:none'>[下一页]</a>");296
}297
else298
{299
foot.Append("<a href='" + pageName + ".aspx?page=" + next_page + "' style='text-decoration:none'>[下一页]</a>");300
}301
foot.Append("<a href='" + pageName + ".aspx?page=" + row_count + "' style='text-decoration:none'>[尾页]</a>");302
}303
else304
{305
foot.Append("[下一页]");306
foot.Append("[尾页]");307
}308
foot.Append(" ");309
foot.Append("转到<select id='sltPage' onchange='selectPage()'>");310
for (int i = 1; i <= row_count; i++)311
{312
foot.Append("<option value=" + i + ">" + i + "</option>");313
}314
foot.Append("</select>");315
foot.Append("</td>");316
foot.Append("</tr></table>");317
page_foot = foot.ToString();318
}319
}320
}
使用说明
在页面的Page_Load方法体里输入以下属性
PageConten1.rows = 368; //总行数
PageConten1.page_rows = 10; //每页分多少行
PageConten1.page_info = 10; //每页要显示多少页码出来
PageConten1.isRequest = 1; //是否带url参数,1为带,2为不带
if (PageConten1.isRequest == 1)
{
index_page = int.Parse(Request["page"] == null ? ("1" + Request["page"]) : Request["page"]);
PageConten1.pageName = "Test_4";
}
else
{
index_page = int.Parse(Request["hidSub"] == null ? ("1" + Request["hidSub"]) : Request["hidSub"]);
}


浙公网安备 33010602011771号