サイズ変更と読み込み中のちらつきを取り除くために、自分の Tabcontrol で CreateParams を使用しています。CreateParams を実装した空のクラスです。
protected override CreateParams CreateParams
{
get
{
CreateParams cp= base.CreateParams;
cp.ExStyle |= 0x02000000; // Turn on WS_EX_COMPOSITED
return cp;
}
}
ラベル、テキストボックス、またはボタンがあり、Windows 7 でうまく機能します。しかし、パネル、tablelayoutpanel、datagridview、および Windows XP がある場合、うまく機能しません。たとえば、datagridview の列は適切な方法で表示されません。
また、現在のシステムが Windows XP の場合、誰かが投稿した次のこともわかりました。しかし、これは私の XP では、ウィンドウの起動前にウィンドウ ハンドル例外が発生します。0x02000000 のみでロードされますが、私が書いたように、列は適切な方法で表示されません。
cp.ExStyle |= 0x02000000; // Turn on WS_EX_COMPOSITED
cp.ExStyle |= 0x00080000; // Turn on WS_EX_LAYERED (On XP System)
この例外を取得せずに、ちらつきと統合されたデータグリッドビューに関する回避策を知っている人はいますか?