MDI親(Form1)とMDI子(Form2)があります。現在、Form2内に次のコードを配置することでForm2がForm1の境界を超えたときに、 Form1のスクロールバーを無効にしました。
protected override void WndProc(ref Message m)
{
const int WM_MOVE = 0x0003;
switch (m.Msg)
{
case WM_MOVE:
return;
default:
base.WndProc(ref m);
break;
}
}
一方、 Form1のスクロールバーは、ユーザーがForm2をForm1の境界外にドラッグしたときに、Form2が範囲外になるかどうかを表示しません。ただし、ユーザーがForm1のサイズをForm2の範囲外になる位置に変更すると、スクロールバーが表示されます。
これが発生しないようにするにはどうすればよいですか?