2014-04-03 99 views
0

我是二年級學生,我們的學院使用C#和Windows窗體環境來演示和演示編程原則。不過,我自學C++,只要我學習新的C#代碼(這裏知道兩者都很好)。Windows窗體繪製效率低下 - C#

我對某件事很好奇:迄今爲止,我從來沒有遇到過一個時間形式需要被構造和繪製的問題,但是因爲我使用了簡單的1280x1024(4:3)圖像作爲其中一個我的形式,我非常失望。現在,以避免控件閃爍時形式的第一apears我做了以下內容:

protected override CreateParams CreateParams 
    { 
     get 
     { 
      CreateParams cp = base.CreateParams; 
      cp.ExStyle |= 0x02000000; // Turn on WS_EX_COMPOSITED 
      return cp; 
     } 
    } 

鏈接:How to fix the flickering in User controls

這解決了以前提到的問題,不過,現在我必須等待,直到1.5秒(取決於電腦的速度,我正在運行的exe)在任何顯示之前。

問題出在c#編譯的方式,WinForms環境,還是有一些解決方案,我只是沒有嘗試過。

+1

SO的工作方式是您對您找到的代碼進行歸因。發佈一個鏈接到作者的個人資料和鏈接到你找到代碼的帖子。它是由站點許可證所要求的。可能會讓貼出來的人也對幫助你有興趣。 –

+0

添加了鏈接。 – Mordacai1000

回答

0

我很disapointed不推薦任何新項目

的WinForms。僅用於維護傳統應用程序。

這不是硬件加速,而且根本不是爲今天的用戶界面需求而設計的。

有沒有一些解決方案,我只是沒有嘗試過?

Microsoft Build Conference現在是怎麼回事,他們強調在基於XAML的UI技術,如WPF和WinRT中爲Windows用戶界面開發的「現在和未來」了很多。

底線:忘記winforms。這是沒用的,不推薦使用。它需要一堆可怕的黑客才能做任何事情,即使是這些黑客,它甚至不能提供從現代UI技術中獲得的一小部分結果。沒有人關心它,微軟已經將它置於「維護模式」,在那裏他們修復了報告的任何關鍵錯誤,但不會增加任何功能。