WinForm的RadioButton使用小技巧

2021-09-23 21:25:19 字數 1204 閱讀 2535

有時候在乙個窗體中有比較多的radiobutton,它們往往是作為取資料、業務邏輯等操作的條件。例如下圖例子所示:

使用者選擇「全部」則會帶出全部符合條件資料、選擇了「已審核」則會取出全部符合條件的已經審核過後的資料.......我們一般的處理方法是每個radiobutton控制項有乙個checkedchanged事件。如下面**所示

**code highlighting produced by actipro codehighlighter (freeware)>        private void rdall_checkedchanged(object sender, eventargs e)

}private void rdaudit_checkedchanged(object sender, eventargs e)

}private void rdnotaudit_checkedchanged(object sender, eventargs e)

}private void rdbilled_checkedchanged(object sender, eventargs e)

}private void rdunbill_checkedchanged(object sender, eventargs e)

}

當窗體的radiobutton控制項比價多時,那麼放眼望去,**裡面到處都是checkedchanged事件、簡直有如洪水氾濫。呵呵

其實我們可以委託來改進**、這樣可以讓**看起來簡潔、邏輯清晰、**量大量減少(當然這個例子不能夠證明)。下面看看是如何改進的吧:

我們把所有radiobutton控制項的checkedchanged事件用同乙個事件替換。 如下圖所示,

**code highlighting produced by actipro codehighlighter (freeware)>

private void radiobtn_checkedchanged(object sender, eventargs e)

this.**data.datasource = getdatasource(filtervalue);

}

這樣處理那麼就可以共用許多相同的**(這個簡單的例子沒有體現)。讓**介面簡明清晰不少!

winform 的分頁問題

看了很多分頁,都是基於處理資料庫sql語句的操作,在這裡,我寫了乙個基於datatable的分頁,有興趣的朋友可以封裝,用於listview 和gridview的分頁。分頁 int totalcount 0 記錄總共的記錄數 static int page 0 記錄現在翻到第幾頁了 static i...

winform的座標系

1 winform的座標系 常用的size和point結構其實相同,也有兩個整型屬性width 和height,也有變體sizef,但兩者使用方式不同。point是 說明實體在什麼地方,而size用於說明實體多大,它們之間 可以顯示轉換。乙個point和乙個size可以組成乙個 rectangle。...

winform 的資料驅動

了解點wpf的資料驅動,感覺很實用的。但是winfom這方面好像有點短缺。就想自己寫個,由於東西好多,實現點就寫下記錄下。這個資料驅動使用 基於mvvm模式,另外加個binding剛好。form view form.cs binding formviewmodel viewmodel 大體這樣。示例...