如何在显示弹出式表单时禁用表单
本文关键字:表单 弹出式 显示 | 更新日期: 2023-09-27 18:35:27
我有一个"main"形式(form1
)。在该表单中,我成功地打开了另一个表单(form2
) - 但是 - 当该表单打开时,您仍然可以控制底层表单(form1
)。
我不希望用户能够这样做,每当他尝试单击它或其他东西时,弹出的表单(form2
)应该获得焦点/闪烁一点,并带有一些默认的Windows声音。我刚刚描述了如果弹出窗口是FileSave/OpenDialog,它是如何工作的。这些对话框完全按照我希望它们的工作方式工作。
我尝试设置form2.Owner = form1;
但没有产生预期的效果。
所以我的问题基本上是:我如何在表单上获得相同的焦点/等效果 - 就像它在 Save/OpenDialog 上一样?
谢谢
~ 特吉斯
要打开form2
,请使用form2.ShowDialog()
在form1
课堂上
form2 form2Object = new form2();
form2.ShowDialog(this);
这样,form1 将保留在后台并且不可单击,直到显示 form2。如果需要,还可以从 form2 返回对话框结果。来自 MSDN 的代码。
Form2 testDialog = new Form2();
// Show testDialog as a modal dialog and determine if DialogResult = OK.
if (testDialog.ShowDialog(this) == DialogResult.OK)
{
// Read the contents of testDialog's TextBox.
this.txtResult.Text = testDialog.TextBox1.Text;
}
else
{
this.txtResult.Text = "Cancelled";
}