winform分页案例简单实现方式~
大家好,我是雄雄,歡迎關(guān)注微信公眾號(hào):雄雄的小課堂。
最近,四班在做KTV點(diǎn)歌系統(tǒng),正好需要用到分頁(yè)的內(nèi)容,所以今天我就整理整理,寫了一個(gè)簡(jiǎn)易的winfrom分頁(yè)案例,以下是案例截圖:
案例分析:窗體加載時(shí),默認(rèn)顯示第一頁(yè)的內(nèi)容,當(dāng)單擊“下一頁(yè)”的按鈕時(shí),上面的內(nèi)容就會(huì)換成第二頁(yè)的內(nèi)容,點(diǎn)擊“上一頁(yè)”按鈕,上面所展示的內(nèi)容就會(huì)換成第一頁(yè)的內(nèi)容,所有顯示的內(nèi)容均從數(shù)據(jù)庫(kù)中查詢顯示。
上一頁(yè)和下一頁(yè)按鈕中間顯示的當(dāng)前頁(yè)和總頁(yè)數(shù),在翻頁(yè)的同時(shí),當(dāng)前頁(yè)也會(huì)隨之變化。
下面說(shuō)一下實(shí)現(xiàn)思路(集合分頁(yè)):
清空所有的label控件。
從數(shù)據(jù)庫(kù)中查詢所有數(shù)據(jù),放在集合中。
循環(huán)遍歷集合中的數(shù)據(jù),顯示在label控件中。
通過(guò)公式(pageIndex-1)*pageSize來(lái)實(shí)現(xiàn)分頁(yè)顯示,其中pageIndex為當(dāng)前頁(yè),pageSize為頁(yè)大小。
總頁(yè)數(shù)的計(jì)算方式:
獲取集合中的數(shù)據(jù)的長(zhǎng)度,也就是總記錄數(shù),與頁(yè)大小(每頁(yè)顯示的條數(shù))計(jì)算出總頁(yè)數(shù):
總數(shù)量除以頁(yè)大小,如果余數(shù)為0,則商即總頁(yè)數(shù),否則在商的基礎(chǔ)上加1為總頁(yè)數(shù)。
下面是關(guān)鍵代碼:
1.聲明的公共變量:
2.窗體的加載事件:
3.查詢所有的年級(jí)名稱放在label中
//查詢所有的年級(jí)名稱放在集合中public?void?FindGradeAll()?{string?sql = "select * from grade";SqlDataReader dr = db.ExecuteReader(sql);while?(dr.Read()){gList.Add(dr["gname"].ToString());}dr.Close();}4.清空Label中的所有內(nèi)容
//清空Label中的所有內(nèi)容public?void?ClearLabel()?{ //獲取panel中有多少個(gè)控件int?count = this.panel1.Controls.Count;//清空f(shuō)or?(int?i = 0; i < count;i++ ) {Label lbl = (Label)this.panel1.Controls[i];lbl.Text = "暫無(wú)數(shù)據(jù)";}}5.分頁(yè)顯示數(shù)據(jù)
//分頁(yè)顯示數(shù)據(jù)public?void?PageShowGrade(int?pageIndex)?{for?(int?i = 0; i < this.panel1.Controls.Count;i++ ) {Label lbl = (Label)this.panel1.Controls[i];int?v = (pageIndex - 1) * pageSize + i;lbl.Text = gList[v];}}6.下一頁(yè)按鈕
//下一頁(yè)private?void?button2_Click(object?sender, EventArgs e){//當(dāng)前是最后一頁(yè)if?(pageIndex == totalPage){MessageBox.Show("現(xiàn)在已經(jīng)是最后一頁(yè)了");}else?{//當(dāng)前頁(yè)加1pageIndex++;//分頁(yè)查詢PageShowGrade(pageIndex);//更新當(dāng)前頁(yè)this.lblPage.Text = pageIndex.ToString();}}7.上一頁(yè)按鈕;
以上就是全部示例說(shuō)明,你學(xué)會(huì)了嗎?
總結(jié)
以上是生活随笔為你收集整理的winform分页案例简单实现方式~的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: CallRail为您确定了投资回报率最高
- 下一篇: 当你左右看看没有发现我时,千万千万别往看