我正在开发的Word加载项出现问题。
问题: 如果我打开名为Form1的非模态表单,并在此表单中按下一个按钮,打开另一个名为Form2的模式表单。现在我关闭了两个表单,但Word窗口正在失去焦点并最小化。
请注意,当我打开Form1并关闭它时,这没有发生。
当我使用Form1.Show(IWin32Window);
通过此方法创建IWin32Window对象:
public static MyWin32Window getWordWindow()
{
IntPtr wordWindow = NativeMethods.FindWindowW("OpusApp", Globals.ThisAddIn.Application.ActiveWindow.Caption + " - Microsoft Word");
MyWin32Window myWin = new MyWin32Window(wordWindow);
return myWin;
}
当我从Form1打开另一个表单时,问题出现 ,假设Form2已打开,但Form2是模态表单并打开:
Form2.ShowDialog();
它工作正常,但是当我关闭Form2然后关闭Form1时,Word窗口被最小化。我该如何防止这种行为?
我还尝试将Form1设置为Form2的所有者,如下所示:
Form2.ShowDialog(this);
但结果相同。
答案 0 :(得分:0)
我发现我可以使用
解决此问题Form.Show();
而不是ShowDialog()
。