国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

C# 控件雙緩沖(轉)

2019-11-06 08:16:07
字體:
來源:轉載
供稿:網友

手頭正在做一個通訊網關,選用了C#的WINFORM作界面 用了一個ListView來實時的顯示數據傳輸情況,于是問題就來了,當數據量比較大,而且處理速度很快時,這該死的界面閃得人眼花… 廢話不多說,直接上代碼:

首先,自定義一個類ListViewNF,繼承自 System.Windows.Forms.ListView (NF=Never/No Flickering)

class ListViewNF : System.Windows.Forms.ListView { public ListViewNF() { // 開啟雙緩沖 this.SetStyle(ControlStyles.OptimizedDoubleBuffer | ControlStyles.AllPaintingInWmPaint, true); // Enable the OnNotifyMessage event so we get a chance to filter out // Windows messages before they get to the form's WndPRoc this.SetStyle(ControlStyles.EnableNotifyMessage, true); } protected override void OnNotifyMessage(Message m) { //Filter out the WM_ERASEBKGND message if (m.Msg != 0x14) { base.OnNotifyMessage(m); } } }

然后,修改我們的Form代碼中定義ListView的位置,將原來的 System.Windows.Forms.ListView listView1; 修改為 ListViewNF listView1;

//private System.Windows.Forms.ListView listView; private ListViewNF listView;

一下是從其它網頁收集的個人心得: 為什么要寫自定義控件呢: protected void SetStyle( ControlStyles flag, bool value )

比如如果你要用到textbox的SetStyle,你需要創建一個自定義控件,繼承自textbox,然后就可以調用了

保護成員是不能在對象外部(相對于textbox, form的代碼是外部)直接訪問的。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 云和县| 纳雍县| 华阴市| 通河县| 平果县| 通河县| 黄龙县| 闽侯县| 陇川县| 大埔区| 徐水县| 南安市| 马关县| 唐海县| 隆安县| 长武县| 甘洛县| 江北区| 庆云县| 滨州市| 英山县| 博客| 读书| 柳州市| 裕民县| 新密市| 深水埗区| 新干县| 横山县| 阜南县| 衡阳市| 姚安县| 晴隆县| 漯河市| 梁山县| 虞城县| 曲水县| 鹤庆县| 华坪县| 万宁市| 垫江县|