显示另一个表单时锁定WinForms窗口?

Sae*_*ani 0 c# forms delegates locking winforms

我有一个WinForms应用程序,在程序的某个地方用户可以调出另一个窗体,例如弹出窗口,例如关于我们表单.我希望锁定主窗体(例如,用户无法在主窗体的UI中执行任何操作).当该弹出窗口关闭时,主窗体将返回正常状态.

这是我的代码(我想我只想念锁定主表单的方式)

private void buttonAbout_Click(Object sender, EventArgs e)
{
     AboutUS abUs = new AboutUS();
     abUS.Show()
     this.LOCK!!!  /* How to lock current form? */

     abUS.FormClosing += delegate { /* How to Unlock main form */ };
 }
Run Code Online (Sandbox Code Playgroud)

Ars*_*nko 6

用Form.ShowDialog()而不是Form.Show().

另请参阅相关问题.