[英]Taskbar icon opens the wrong Active form
我的应用程序有一个奇怪的行为,即当在Web浏览器(或任何其他应用程序)之间导航并单击回到该应用程序时,似乎打开了错误的Form
? 因此,用户实际上必须利用Tab
窗口打开正确的Form
。
例如, Form1
是主要形式。 用户单击打开Form2
的按钮。 Form1
是幕后藏而Form2
打开。 现在,如果用户转到其他应用程序(例如浏览器)并单击返回到应用程序,则将显示Form1
,并且没有“选项卡”窗口没有其他方法可以返回到Form2
吗?
我在打开Form2
时使用了.ShowDialog()
属性,该属性禁用了父表单Form1
但似乎偶尔还是会这样做?!
我还将Form2的ShowInTaskBar
设置为False
以便在任务栏中为所有表单提供一个图标。
不确定是否会导致此行为发生?
private void button1_Click(object sender, EventArgs e)
{
Form2 form2 = new Form2();
form2.ShowDialog();
}
我认为您需要告诉Form2谁是其所有者表单。
像这样:
private void button1_Click(object sender, EventArgs e)
{
Form2 form2 = new Form2();
form2.Owner = this;
form2.ShowDialog();
}
有关更多信息,请参见System.Windows.Forms 。
打开form2时,需要设置form1的mdiParent。
首先,在属性中将form1设置为“ isMdiParent”,设置为“ true”,然后使用以下代码:
private void button1_Click(object sender, EventArgs e)
{
Form2 form2 = new Form2();
form2.MdiParent = this;
form2.Show();
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.