多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php開源 > php教程 > DevExpress 用戶控件 分頁(中)

DevExpress 用戶控件 分頁(中)

來源:程序員人生   發布時間:2015-05-26 07:40:00 閱讀次數:3563次

說明:

1)具體調用請關注 看DevExpress 用戶控件 分頁(下)

datanavi_ButtonClick 是DataNavigator的ButtonClikc事件

視圖設計器:


分頁用戶控件后臺代碼以下:

using System; using System.Collections.Generic; using System.ComponentModel; using System.Drawing; using System.Data; using System.Linq; using System.Text; using System.Windows.Forms; using DevExpress.XtraEditors; namespace CYSoft.TS.UI.StudentInfo { public partial class PageCtrl : DevExpress.XtraEditors.XtraUserControl { /// <summary> /// 自定義事件 當前頁改變事件 /// </summary> public event EventHandler CurrentPageChange; #region 定義分頁 字段和屬性 private int m_recordCount = 0; /// <summary> /// 數據行總數 /// </summary> public int recordCount { get { return m_recordCount; } set { SetFormCtrlEnable(); this.m_recordCount = value; } } private int m_pageSize = 20; /// <summary> /// 每頁顯示的數據行數 /// </summary> public int pageSize { get { return m_pageSize; } set { this.m_pageSize = value; } } private int m_pageIndex = 1; /// <summary> /// 當前頁 /// </summary> public int pageIndex { get { return m_pageIndex; } set { this.m_pageIndex = value; } } private int m_pageCount = 0; /// <summary> /// 總頁數 /// </summary> public int pageCount { get { if (m_pageSize != 0) { m_pageCount = GetPageCount(); } return m_pageCount; } } /// <summary> /// 獲得總頁數 /// </summary> /// <returns></returns> private int GetPageCount() { if (pageSize == 0) { return 0; } int num = 1; if (recordCount % pageSize == 0) { num = recordCount / pageSize; } else { num = recordCount / pageSize + 1; } return num; } #endregion public PageCtrl() { InitializeComponent(); } /// <summary> /// 設置DataNavigator按鈕全部可用 /// </summary> private void SetFormCtrlEnable() { this.datanavi.Buttons.CustomButtons[0].Enabled = true; this.datanavi.Buttons.CustomButtons[1].Enabled = true; this.datanavi.Buttons.CustomButtons[2].Enabled = true; this.datanavi.Buttons.CustomButtons[3].Enabled = true; } //DataNavigator 點擊 private void datanavi_ButtonClick(object sender, NavigatorButtonClickEventArgs e) { ShowEvent("ButtonClick", e.Button); } #region 第1頁、上1頁、下1頁、最后1頁 /// <summary> /// 第1頁、上1頁、下1頁、最后1頁 點擊事件 /// </summary> /// <param name="eventString"></param> /// <param name="nbb"></param> void ShowEvent(string eventString, NavigatorButtonBase nbb) { switch (nbb.Tag.ToString()) { case "First": First(); break; case "PrePage": PrePage(); break; case "NextPage": NextPage(); break; case "Last": Last(); break; default: break; } DrawControl(true); } private void First() { m_pageIndex = 1; } private void PrePage() { m_pageIndex = Math.Max(1, m_pageIndex - 1); } private void NextPage() { m_pageIndex = Math.Min(pageCount, m_pageIndex + 1); } private void Last() { m_pageIndex = pageCount; } #endregion /// <summary> /// 設置DataNavigator按鈕是不是可用 /// </summary> /// <param name="callEvent">是不是當前頁</param> private void DrawControl(bool callEvent) { if (callEvent && CurrentPageChange != null) { //當前頁事件 CurrentPageChange(this, null); } //設置按鈕全部可用 this.SetFormCtrlEnable(); //只有1頁 if (recordCount <= 1) { this.datanavi.Buttons.CustomButtons[0].Enabled = false; this.datanavi.Buttons.CustomButtons[1].Enabled = false; this.datanavi.Buttons.CustomButtons[2].Enabled = false; this.datanavi.Buttons.CustomButtons[3].Enabled = false; }//第1頁 else if (pageIndex <= 1) { this.datanavi.Buttons.CustomButtons[0].Enabled = false; this.datanavi.Buttons.CustomButtons[1].Enabled = false; }//最后1頁 else if (pageIndex >= pageCount) { this.datanavi.Buttons.CustomButtons[2].Enabled = false; this.datanavi.Buttons.CustomButtons[3].Enabled = false; } } /// <summary> /// 加載LableControl /// </summary> private void ShowLableInfo() { if (!this.Created) { return; } this.BeginInvoke((MethodInvoker)delegate { try { if (!DesignMode) { this.labelControl1.Text = "總行數:" + recordCount + " 當前頁:" + pageIndex + "/" + pageCount + " "; } } catch { } }); } /// <summary> /// 分頁控件加載 /// </summary> /// <param name="count">數據總行數</param> private void DrawControl(int count) { m_recordCount = count; //設置DataNavigator DrawControl(false); //設置LabControl ShowLableInfo(); } /// <summary> /// 設置分頁數據控件 /// </summary> /// <param name="currentPageIndex">當前頁</param> /// <param name="pageSize2">每頁顯示行數</param> /// <param name="recordTotal">總行數</param> public void SetPageCtrl(int currentPageIndex, int pageSize2, int recordTotal) { pageIndex = currentPageIndex; recordCount = recordTotal; pageSize = pageSize2; DrawControl(recordTotal); } } }


生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 另类 欧美 视频二区 | 自拍欧美亚洲 | 一级做a爰性视频 | 久久精品欧美日韩精品 | 亚洲性生活视频 | 日本亚洲欧美美色 | 成人性a激情免费视频 | 国产专区一va亚洲v天堂 | 久久性| 欧美野外多人交3 | 国产欧美日韩精品第一区 | 亚洲精品一区二区乱码在线观看 | 午夜精品同性女女 | 尤物精品 | 亚洲欧美片 | 国产精品看片 | 国产日韩一区二区三区在线观看 | 欧美xx在线 | 亚洲精品自在线拍 | 免费人成毛片乱码 | 波多野结衣中文一区二区免费 | 国产第一页在线播放 | 国产成在线观看免费视频成本人 | 亚洲丶国产丶欧美一区二区三区 | 日韩欧美一区二区三区 | 男女激情网 | 久久大香线蕉综合爱 | 精品国免费一区二区三区 | 国产在线精品一区二区高清不卡 | 伊人资源 | 亚洲精品aⅴ中文字幕乱码 亚洲精品h | h在线看| 久久综合九色综合欧洲色 | japanesefree日本护士 | 巨大乳bbwsex欧美高清 | 意大利极品xxxxhd | 亚洲精品第1页 | 国产欧美日韩综合二区三区 | 亚洲伊人久久大香线焦 | 亚洲精品乱码久久久久久 | 亚洲国产欧美在线不卡中文 |