ASP.NET自定义控件 第十天 实现分页功能的DataList
作者 佚名技术
来源 NET编程
浏览
发布时间 2012-05-20
case Constant.FIRST_PAGE: index = 0;
break;
case Constant.PREV_PAGE: index =
pageIndex - 1 < 0 ? 0 : pageIndex - 1;
break;
case Constant.NEXT_PAGE: index =
pageIndex + 1 > _pageCount - 1 ? _pageCount - 1 :
pageIndex + 1;
break;
case Constant.LAST_PAGE: index =
_pageCount - 1;
break;
}
}
arg = Constant.PAGE_ARGUMENT +
Constant.ARGUMENT_SPLITTER + index;
btn.Attributes.Add
(HtmlTextWriterAttribute.Href.ToString(),
dal.Page.ClientScript.GetPostBackClientHyperlink(dal, arg));
}
}
}
}
}
3.2 创建DataList类,继承自默认的DataList类并实现 IPostBackEventHandler接口: [ToolboxData(@"<{0}:DataList runat=''server''></ {0}:DataList>")] [ParseChildren(true)] [PersistChildren(false)] public class DataList : System.Web.UI.WebControls.DataList, IPostBackEventHandler { } 3.3 定义DataList属性,保存分页设置信息: public int RecordCount { get { object o = ViewState["RecordCount"]; return o == null ? 0 : Convert.ToInt32(o); } set { ViewState["RecordCount"] = value; } } public virtual int PageIndex { get { object o = ViewState["PageIndex"]; return o == null ? 0 : Convert.ToInt32(o); } set { ViewState["PageIndex"] = value; } } [DefaultValue(10)] public virtual int PageSize { get { object o = ViewState["PageSize"]; return o == null ? 10 : Convert.ToInt32(o); } set { ViewState["PageSize"] = value; } } private PagerSettings _settings; [DesignerSerializationVisibility (DesignerSerializationVisibility.Content)] [PersistenceMode(PersistenceMode.InnerProperty)] public PagerSettings PagerSettings { get { if (_settings == null) _settings = new PagerSettings(); if (base.IsTrackingViewState) ((IStateManager)_settings).TrackViewState(); return this._settings; } } public bool EnablePaging { get { object o = ViewState["EnablePaging"]; return o == null ? false : Convert.ToBoolean(o); } set { ViewState["EnablePaging"] = value; } } 3.4 创建自定义事件类,保存新页码: public class DataListPageEventArgs : EventArgs { public int NewPageIndex { get; set; } } 3.5 在DataList类中 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |
你可能对下面的文章感兴趣
关于ASP.NET自定义控件 第十天 实现分页功能的DataList的所有评论