公司新來的開發人員,對winform開發還不是特別精通,在做個性化界面體驗的時候容易出現閃爍和加載慢
閃爍的話,通過winform窗體的雙緩存來解決在form 窗體中增加如下代碼
protected override CreateParams CreateParams { get { CreateParams cp = base.CreateParams; cp.ExStyle |= 0x02000000;//用雙緩沖繪制窗口的所有子控件 return cp; } }
加載慢的問題,一般很容易使在加載數據的邏輯和頁面初始化的時候混在一起了,嚴重影響界面的顯示。所以一定要將加載
數據的邏輯剝離開來,通過Task 去異步執行,在使用Task 的時候有注意點,任務執行成功了要更改界面元素,所以Task的
上下文要保證是當前UI主線程的代碼如下:
var UISyncContext = TaskScheduler.FromCurrentSynchronizationContext(); task.ContinueWith(act, UISyncContext);
希望能對新手有幫助