将鼠标移到打开第二个窗体的 WinForm 上会导致第二个窗体失去焦点



我遇到了一个奇怪的错误。 我有一个WinForms应用程序,当单击TreeListView中的对象时,它会以第二种形式打开"查看器"。 查看器最初是我们编写的第二个应用程序,我将其转换为 DLL 并嵌入到我的程序中。

无论如何,在同一显示器上查看时,查看器显示在原始表单之上。 当鼠标移到原始打开器上(而不是单击(时,新窗体将掉落在其后面,无法保持焦点。

用于显示窗体的一些代码:

 if (showImg != null)
      showImg.Close();
showImg = new frmMain(document, fileType.Mime == "application/pdf");
this.BeginInvoke((Action)(() => showImg.Show()));

我不确定是什么触发了主要焦点。

当您显示第二个窗口时,您需要在第一个参数中提供所有者窗口

myAwesomeWindow.ShowDialog(this); // where "this" is your calling Owner view/form
myAwesomeWindow.Show(this); 

相关内容

最新更新