我的应用使用计时器,在几秒钟后显示表单。 当我最小化我的应用程序以执行其他操作时,计时器仍然处于活动状态(我已经确定了)并且表单将所有窗口都放在前面,并专注于它(正常行为)。
我希望新的表单在我的主要应用程序之上打开,但不要在我的所有窗口之上打开。
在主窗体中,我将这样称为新表单:
MRIS.EVENT_BOX form1 = new MRIS.EVENT_BOX();
form1.Owner = this;
form1.ShowDialog();
我设法通过在EVENT_BOX中添加它来消除焦点问题:
protected override bool ShowWithoutActivation { get { return true; } }
我还检查新表单中TopMost是否设置为false。
但新形式仍然显示在所有其他形式之上(这次没有重点......)。
我检查了一些其他问题,但无法找到有用的东西。
有些人谈论可见形式吗?
如果你可以帮助我?
由于
答案 0 :(得分:1)
如果您不想将其带到前面,则需要致电form1.Show();
form1.Show();
//form1.BringToFront() You may need to call this if you want to being it to front
form1.ShowDialog()
将表单显示为dialog
,这意味着它将显示在parent form
之上。您可以查看有关此here