皆様のご意見をお寄せいただきありがとうございます。Subversion の助けを借りて、この問題は解決されました! ウィンドウの動きが鈍くなるのは比較的新しい問題だったので、Subversion を使用して自分のソース コードを振り返ってみることにしました。最近、Vista でのちらつきを減らすためにフォームに WS_EX_COMPOSITED スタイル フラグを適用したことがわかりました。
protected override CreateParams CreateParams
{
get
{
CreateParams result = base.CreateParams;
result.ExStyle |= 0x02000000; // WS_EX_COMPOSITED
return result;
}
}
コメントアウトすると、フォームは XP で再び応答し、繰り返し表示される WM_PAINT メッセージはなくなりました。したがって、解決策は、Vista 以降でのみ WS_EX_COMPOSITED を適用することでした。
protected override CreateParams CreateParams
{
get
{
CreateParams result = base.CreateParams;
if (Environment.OSVersion.Platform == PlatformID.Win32NT
&& Environment.OSVersion.Version.Major >= 6)
{
result.ExStyle |= 0x02000000; // WS_EX_COMPOSITED
}
return result;
}
}
今、すべてがうまくいきます!