当前位置:首页 > 网络编程 > WEB编程 > ASP.net >  .Net分页控件发布(2)

 .Net分页控件发布(2)

点击次数:14 次 发布日期:2008-11-26 12:42:33 作者:源代码网
源代码网推荐      273
源代码网推荐  274 #region 私有属性
源代码网推荐  275 private bool HasPrevious
源代码网推荐  276 {
源代码网推荐  277 get
源代码网推荐  278 {
源代码网推荐  279 if (PageIndex > 0)
源代码网推荐  280 return true;
源代码网推荐  281
源代码网推荐  282 return false;
源代码网推荐  283 }
源代码网推荐  284 }
源代码网推荐  285
源代码网推荐  286 private bool HasNext
源代码网推荐  287 {
源代码网推荐  288 get
源代码网推荐  289 {
源代码网推荐  290 if (PageIndex + 1 < CalculateTotalPages() )
源代码网推荐  291 return true;
源代码网推荐  292
源代码网推荐  293 return false;
源代码网推荐  294 }
源代码网推荐  295 }
源代码网推荐  296 #endregion
源代码网推荐  297
源代码网推荐  298 #region 帮助方法和公共属性
源代码网推荐  299
源代码网推荐  300 /// <summary>
源代码网推荐  301 /// 获取分页导航按钮的超链接字符串
源代码网推荐  302 /// </summary>
源代码网推荐  303 /// <param name="pageIndex">该分页按钮相对应的页索引</param>
源代码网推荐  304 /// <returns>分页导航按钮的超链接字符串</returns>
源代码网推荐  305 private string GetHrefString(int pageIndex)
源代码网推荐  306 {
源代码网推荐  307 string url = Page.Request.RawUrl;
源代码网推荐  308
源代码网推荐  309 if (Regex.IsMatch(url, @"(d+).shtml", RegexOptions.IgnoreCase))
源代码网推荐  310 {
源代码网推荐  311 url = Regex.Replace(url, @"(d+).shtml", pageIndex + ".shtml");
源代码网推荐  312 }
源代码网推荐  313
源代码网推荐  314 if (Regex.IsMatch(url, @"PageIndex=(d+)", RegexOptions.IgnoreCase))
源代码网推荐  315 {
源代码网推荐  316 url = Regex.Replace(url, @"PageIndex=(d+)", "PageIndex=" + pageIndex.ToString());
源代码网推荐  317 }
源代码网推荐  318
源代码网推荐  319 return Page.Server.UrlPathEncode(url);
源代码网推荐  320 }
源代码网推荐  321
源代码网推荐  322 public int CalculateTotalPages()
源代码网推荐  323 {
源代码网推荐  324 int totalPagesAvailable;
源代码网推荐  325
源代码网推荐  326 if (TotalRecords == 0)
源代码网推荐  327 return 0;
源代码网推荐  328
源代码网推荐  329 totalPagesAvailable = TotalRecords / PageSize;
源代码网推荐  330
源代码网推荐  331 if ((TotalRecords % PageSize) > 0)
源代码网推荐  332 totalPagesAvailable++;
源代码网推荐  333
源代码网推荐  334 return totalPagesAvailable;
源代码网推荐  335 }
源代码网推荐  336
源代码网推荐  337 /// <summary>
源代码网推荐  338 /// 当前页
源代码网推荐  339 /// </summary>
源代码网推荐  340 public int PageIndex
源代码网推荐  341 {
源代码网推荐  342 get
源代码网推荐  343 {
源代码网推荐  344 int _pageIndex = 0;
源代码网推荐  345
源代码网推荐  346 if ((!Page.IsPostBack) && (context.PageIndex > 0))
源代码网推荐  347 _pageIndex = context.PageIndex;
源代码网推荐  348 else
源代码网推荐  349 _pageIndex = Convert.ToInt32(ViewState["PageIndex"]);
源代码网推荐  350
源代码网推荐  351 if (_pageIndex < 0)
源代码网推荐  352 return 0;
源代码网推荐  353 else
源代码网推荐  354 {
源代码网推荐  355 if (_pageIndex > CalculateTotalPages()-1)
源代码网推荐  356 return CalculateTotalPages()-1;
源代码网推荐  357 else
源代码网推荐  358 return _pageIndex;
源代码网推荐  359 }
源代码网推荐  360 }
源代码网推荐  361 set
源代码网推荐  362 {
源代码网推荐  363 ViewState["PageIndex"] = value;
源代码网推荐  364 }
源代码网推荐  365 }
源代码网推荐  366
源代码网推荐  367 /// <summary>
源代码网推荐  368 /// 每页记录数
源代码网推荐  369 /// </summary>
源代码网推荐  370 public int PageSize
源代码网推荐  371 {
源代码网推荐  372 get
源代码网推荐  373 {
源代码网推荐  374 int pageSize = Convert.ToInt32(ViewState["PageSize"]);
源代码网推荐  375
源代码网推荐  376 if (pageSize == 0)
源代码网推荐  377 {
源代码网推荐  378 return 10;
源代码网推荐  379 }
源代码网推荐  380
源代码网推荐  381 return pageSize;
源代码网推荐  382 }
源代码网推荐  383 set
源代码网推荐  384 {
源代码网推荐  385 ViewState["PageSize"] = value;
源代码网推荐  386 }
源代码网推荐  387
源代码网推荐  388 }
源代码网推荐  389
源代码网推荐  390 /// <summary>
源代码网推荐  391 /// 总记录数
源代码网推荐  392 /// </summary>
源代码网推荐  393 public int TotalRecords
源代码网推荐  394 {
源代码网推荐  395 get
源代码网推荐  396 {
源代码网推荐  397 return Convert.ToInt32(ViewState["TotalRecords"]);
源代码网推荐  398 }
源代码网推荐  399 set
源代码网推荐  400 {
源代码网推荐  401 ViewState["TotalRecords"] = value;
源代码网推荐  402 }
源代码网推荐  403 }
源代码网推荐  404
源代码网推荐  405 private string text = "共{0}页";
源代码网推荐  406
源代码网推荐  407 private string linkCss = "";
源代码网推荐  408 /// <summary>
源代码网推荐  409 /// 链接样式
源代码网推荐  410 /// </summary>
源代码网推荐  411 public string LinkCss
源代码网推荐  412 {
源代码网推荐  413 get { return linkCss; }
源代码网推荐  414 set { linkCss = value;}
源代码网推荐  415 }
源代码网推荐  416
源代码网推荐  417 private string textCss = "";
源代码网推荐  418 /// <summary>
源代码网推荐  419 /// 文字样式
源代码网推荐  420 /// </summary>
源代码网推荐  421 public string TextCss
源代码网推荐  422 {
源代码网推荐  423 get { return textCss; }
源代码网推荐  424 set { textCss = value;}
源代码网推荐  425 }
源代码网推荐  426
源代码网推荐  427 public string TextFormat
源代码网推荐  428 {
源代码网推荐  429 get
源代码网推荐  430 {
源代码网推荐  431 return text;
源代码网推荐  432 }
源代码网推荐  433 set
源代码网推荐  434 {
源代码网推荐  435 text = value;
源代码网推荐  436 }
源代码网推荐  437 }
源代码网推荐  438
源代码网推荐  439 #endregion
源代码网推荐  440 }
源代码网推荐  441 }
源代码网推荐  442
源代码网推荐  在页面上只需要向下面这样写:
源代码网推荐  1 <%@ Control Language="c#" %>
源代码网推荐  2 <%@ Register TagPrefix="Anchor" Namespace="MyCompany.Controls" Assembly="MyCompany.Controls" %>
源代码网推荐  3 <ANCHOR:PAGER id="Pager1" runat="server"></ANCHOR:PAGER>
源代码网推荐  4  做人要厚道,请注明转自酷网动力(www.ASPCOOL.COM)。
源代码网推荐


源代码网供稿.
网友评论 (0)
会员中心
网络编程
本站推荐
网络编程之精华