ユーザーコントロールディスプレイの作り方[WIN]を点滅させないでください。
序文
4.0を.NETに.NET 1.1のWindowsフォームのプログラムをアップグレードする前に、オープニング画面での結果は、フラッシュは非常に興味を持っている!そこで彼は、ソリューションを探し始めました。
研究と決意
セットの真のDoubleBuffer =を見つけるために始めた、これは画面オブジェクトの多くは、塗装!それともことUSER感である場合は特に、NBで4年前に上記のハイエンド機での使用の少し、それでも同じ問題を抱えていますとき~~
その後、それを行うために彼の方法によると、「どのようにユーザーコントロールのちらつきを修正する」が見つかり、それは本当に大丈夫のパフォーマンスです!
彼の方法は、以下のような手順があり、フォーム内にあり、CreateParamsをオーバーライドし、ユーザーコントロールを
フォーム上のコード
C#の
保護オーバーライドCreateParamsをCreateParamsを{
取得する {
CreateParamsをCP = base.CreateParams。
cp.ExStyle | = 0x02000000; // WS_EX_COMPOSITEDをオンにします
CPを返します。
}
}
VB
保護されたオーバーライドReadOnlyプロパティCreateParamsをとしてSystem.Windows.Forms.CreateParams
取得する
CreateParamsを= MyBase.CreateParamsとして暗いCP
cp.ExStyle = cp.ExStyleまたは&H2000000
「WS_EX_COMPOSITEDをオンにします
戻りCP
エンドゲット
エンドプロパティ
ユーザーコントロール的コード
C#の
保護オーバーライドCreateParamsをCreateParamsを{
取得する {
varが=のbase.CreateParamsをPARMS。
parms.Style&=〜0x02000000; // WS_CLIPCHILDRENをオフにします
PARMSを返します。
}
}
VB
保護されたオーバーライドReadOnlyプロパティCreateParamsをとしてSystem.Windows.Forms.CreateParams
取得する
System.Windows.Forms.CreateParams = MyBase.CreateParamsとしてPARMS薄暗いです
「WS_CLIPCHILDRENをオフにします
parms.Style =(parms.Styleそして(未&H2000000))
PARMSを返します。
エンドゲット
エンドプロパティ
健康:
XPマシンで1、ボーダーは表示されません!
2.それともフォーム&H2000000に追加が有効であることができる、その期間のコードを追加する必要もありませんユーザーコントロール!
3.フォームまたは&H2000000に参加しませんが、ユーザーコントロールと(未&H2000000)に参加するために単語のがある場合は、ラベルが画面に表示されますが、状況から出てきません!
参考データ:ユーザーコントロールでのちらつきを修正する方法
:元大列が ユーザーコントロールディスプレイの作り方[WIN]を点滅しません