C# 任务栏图标打开错误的活动窗体
我的应用程序有一种奇怪的行为,当在web浏览器(或任何其他应用程序)之间导航并单击返回应用程序时,似乎打开了错误的C# 任务栏图标打开错误的活动窗体,c#,forms,winforms,C#,Forms,Winforms,我的应用程序有一种奇怪的行为,当在web浏览器(或任何其他应用程序)之间导航并单击返回应用程序时,似乎打开了错误的表单?因此用户必须使用选项卡窗口打开正确的表单 例如,Form1是主要形式。用户单击一个按钮,打开Form2Form1隐藏在场景后面。现在,如果用户转到另一个应用程序(例如浏览器)并单击返回到应用程序,则会显示Form1,没有选项卡窗口,没有其他方法返回到Form2 我在打开Form2时使用了.ShowDialog()属性,该属性禁用了父窗体Form1,但似乎仍然偶尔这样做 我还将F
表单
?因此用户必须使用选项卡
窗口打开正确的表单
例如,Form1
是主要形式。用户单击一个按钮,打开Form2
<当Form2
打开时,code>Form1隐藏在场景后面。现在,如果用户转到另一个应用程序(例如浏览器)并单击返回到应用程序,则会显示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();
}
有关详细信息,请参见打开form2时,需要设置form1的父级 首先,在属性中将form1设置为“isMdiParent”为“true”,然后使用以下代码:
private void button1_Click(object sender, EventArgs e)
{
Form2 form2 = new Form2();
form2.MdiParent = this;
form2.Show();
}
没有迹象表明OP有MDI父级。