WPF 分頁控制項

2021-05-27 19:30:07 字數 3679 閱讀 6847

控制項 頁面

控制項頁 後台

public delegate void pageindexchangingeventhandler(int pageindex, eventargs e);

/// /// interaction logic for btnpager.xaml

///

public partial class btnpage: usercontrol

private int pageindex = 1;

public int pageindex

set

}private int pagesize = 10;

/// /// 頁面記錄數 應與datagrid的pagesize保持一致

///

public int pagesize

set}

}private int recordcount = 0;

/// /// 記錄總數

///

public int recordcount

set}

}private int pagecount;

private int maxpagebtnnum = 8;

/// /// 要顯示的頁數

///

public int maxpagebtnnum

set

}/// ///

///

public event pageindexchangingeventhandler pageindexchangingevent;

/ / button content對應的值

/ private void button_click(object sender, routedeventargs e)

pagechangeset(e);

}/// /// 設定button的content

///

private void bindlist()

else

if (pageindex < pagecount)

else

int halfnum = maxpagebtnnum % 2 == 0 ? maxpagebtnnum / 2 : (maxpagebtnnum / 2 + 1);

int fromindex, toindex;

if (pageindex <= halfnum)

fromindex = 1;

else

fromindex = pageindex - halfnum;

if (pagecount - pageindex <= halfnum)

toindex = pagecount;

else

toindex = pageindex + halfnum;

arraylist btnindexlist = new arraylist();

for (int i = fromindex; i <= toindex; i++)

);else

btnindexlist.add(new );

}icpage.itemssource = btnindexlist;

icpage.items.refresh();

listcbbindexlist = new list();

for (int i = 1; i <= pagecount; i++)

cbgoto.selectionchanged -= new selectionchangedeventhandler(cbgoto_selectionchanged);

cbgoto.itemssource = cbbindexlist;

cbgoto.items.refresh();

cbgoto.text = pageindex.tostring();

cbgoto.selectionchanged += new selectionchangedeventhandler(cbgoto_selectionchanged);

tbpagecount.text = pagecount.tostring();

tbrecordcount.text = recordcount.tostring();

tbpageindex.text = pageindex.tostring();

}/// /// 翻頁前的設定

///

///

private void pagechangeset(eventargs e)

///

private void load()

/// /// 頁面下拉框

///

///

///

private void cbgoto_selectionchanged(object sender, selectionchangedeventargs e)

catch (exception)

}}

使用頁 後台

service.getpagelist(pageindex, pagesize, orderby, strsql, ref count);
dgplist.pageindex = pageindex;

dgplist.pagesize = pagesize;

dgplist.recordcount = count;

分頁方法

/// /// 分頁

///

/// 頁索引

/// 頁大小

/// 表名

/// 返回的字段為*表示所有的字段

/// 排序規則

/// 主鍵列,如果表沒有主鍵,隨便寫乙個列即可

/// 過濾條件

/// 執行結果 -1 error, 0 false, 大於1表示一共有幾頁

/// 記錄總數

/// 對分頁的描述

///

public static dataset getpagelist(int pageindex, int pagesize, string table, string field, string orderby, string pk, string filter, ref int maxpage, ref int totalrow, ref string descript)//out是在外面不能賦值的

sqlparameter pars = new sqlparameter ;

pars[7].direction = parameterdirection.output;

pars[8].direction = parameterdirection.output;

pars[9].direction = parameterdirection.output;

dataset ds = runprocedure("rownumberpagination", pars, "ds");

maxpage = (int)pars[7].value;

totalrow = (int)pars[8].value;

descript = pars[9].value.tostring();

return ds;

}

WPF學習 分頁控制項

好多年沒有發博了,今天閒暇,把給公司做的erp分頁控制項拿出來,有很多都用到分頁的,所以就封裝了乙個usercontrol分頁控制項,效果還不錯,可以看看,先!注意 有用到儲存過程。效果圖 1 分頁實體類 code highlighting produced by actipro codehighl...

WPF控制項

什麼是控制項?控制項是指資料和方法的封裝,而且控制項有自己的方法和屬性。wpf設計ui語言是xaml,它能將使用者資料處理完成後展示出來。我們可以把控制項想像成乙個控制項是乙個容器,容器裡面的內容就是控制項的內容。控制項的內容可以直接是資料,也可以是控制項。wpf中也有預設不能看到的控制項,如doc...

WPF控制項

控制項是指對資料和方法的封裝。控制項可以有自己的屬性和方法,其中屬性是控制項資料的 簡單訪問者,方法則是控制項的一些簡單而可見的功能 控制項建立過程包括設計 開發 除錯 就是所謂的3ds開發流程,即design develop debug 工作,然後是控制項的使用。開發 者應該掌握的三項主要內容是 ...