在窗体中我有一个按钮,它具有从(通过鼠标单击)拾取一些数据的功能 父应用程序。等待无模式对话框关闭vb.net
我有处理父应用程序句柄,但即使我试图把它放在上面我不能做选择,因为窗体是模态的。
此处的要求是打开无模式对话框并等待它关闭。其他明智的是它进一步并执行下面的功能。
另一个选项可以是打开窗体为模态,并在运行时将其更改为无模。
但是怎么做呢? :)
在窗体中我有一个按钮,它具有从(通过鼠标单击)拾取一些数据的功能 父应用程序。等待无模式对话框关闭vb.net
我有处理父应用程序句柄,但即使我试图把它放在上面我不能做选择,因为窗体是模态的。
此处的要求是打开无模式对话框并等待它关闭。其他明智的是它进一步并执行下面的功能。
另一个选项可以是打开窗体为模态,并在运行时将其更改为无模。
但是怎么做呢? :)
假设WinForms ...当你创建对话框时,钩入它的FormClosed
事件。关闭时,此事件将触发,并且您的原始表单将被通知(假设事件处理程序处于原始形式)。
喜欢的东西:
class MainForm : Form
{
private ChildForm _childForm;
public void ShowChildForm()
{
_childForm = new ChildForm();
_childForm.FormClosed += (s, e) => MessageBox.Show("Child was closed.");
_childForm.Show();
}
}
这就是说,如果你需要等待直到它关闭,那么这听起来很像一个模式对话框:
_childForm.ShowDialog();
哪将阻止主窗体直到子窗体关闭。不需要关闭关闭的事件。
你的问题没有做出完整意义上的,而是试图回答这么远
可以使用
Form1.ShowDialog
显示一个模式对话框如果再需要出示另一模态对话框,你可以做这样的:
Form2.ShowDialog
不能显示非模态对话框当模式显示的是当前电流。
注意:模式不是型号 – Reniuz 2012-04-19 12:44:08
这些窗口是同一个应用程序吗?你的描述有些含糊,说明它可能意味着单独的过程。 – 2012-04-19 12:50:30
它可能是'模态',但它绝对是'无模式'。 – 2012-04-19 12:54:02