防止窗口在不抽动的情况下离开MDI
本文关键字:情况下 离开 MDI 窗口 | 更新日期: 2023-09-27 18:28:07
在Form1的Move事件中,我检查它的位置,如果它不在用户的视野中,我会将它移回。有没有一个事件在他移动完后会触发?因为移动事件是在移动的时候触发的,所以我需要它在移动之后。这是我到目前为止的代码:
private void PublicTicker_Move(object sender, EventArgs e)
{
if (this.Left < 0)
{ this.Left = 0; }
else if (this.Left > this.MdiParent.ClientRectangle.Width - this.Width)
{ this.Left = this.MdiParent.ClientRectangle.Width - this.Width; }
if (this.Top < 3)
{ this.Top = 3; }
else if (this.Top > this.MdiParent.ClientRectangle.Height - this.Height)
{ this.Top = this.MdiParent.ClientRectangle.Height - this.Height; }
}
尝试在ResizeEnd事件中执行移动校正例程。令人惊讶的是,它不仅在调整窗体大小时被触发,而且在用户移动窗体时也被触发。
阅读更多Form.ResizeEnd事件。