关闭文件打开对话框后如何让主窗体回到前台我的C#应用程序首先打开一个窗体。在该窗体的构造函数中,我“showDialog”是一个打开的文件对话框。选择要打开的文件后,打开文件对话框关闭,文件加载,内容显示在主窗体中,但主窗体隐藏在桌面上所有其他打开的窗口后面。我必须在任务栏中找到它并聚焦它。我刚启动应用程序,我希望表单具有焦点。我编写了其他不使用OpenFileDialog的应用程序,当我启动它们时,主窗体会像您期望的那样打开焦点。openfiledialog关闭后,如何让主窗体获得焦点?我已经尝试了所有这些,没有任何明显的区别。我对此进行了广泛的研究,这里是每个人都建议和说有用的东西,但它们对我不起作用。有些人认为我试图让我的形式最重要,这违反了所有神圣的东西。但是,我认为没有多少人会希望在打开应用程序时先显示主窗体,然后再显示其他所有内容。任何人对如何确保我的表格在“前面”并且最重要的是有重点有任何其他想法吗?当您执行此操作时,您的应用程序将有一小段时间在对话框关闭后没有窗口可用于接收焦点。Windows被迫寻找另一个窗口来关注,这将是另一个应用程序的窗口。您的主窗口最终出现,现在位于其他应用程序窗口的后面。相反,在Shown事件的事件处理程序中显示对话框。或者使用样板+打开命令。如果可以,将ShowDialog移出构造函数,或尝试将其放入构造函数中:this.Shown+=OnShown;并将您的ShowDialog移至此处:privatevoidOnShown(objectsender,EventArgseventArgs){}这会将窗口设置在顶部:[DllImport("user32.dll")]staticexternboolSetForegroundWindow(IntPtrhWnd);privatevoidForm1_Load(objectsender,EventArgse){....//在您的代码之后,将对函数的调用放在最后。SetForegroundWindow(this.Handle);}汉斯先生说,另一种设计做得更好。解决方案:this.Activate();但是如果从表单Load事件中调用。以上是C#学习教程:如何在关闭文件打开对话框后,将主窗体返回到之前共享的所有内容。如果对大家有用,需要了解更多C#学习教程,希望大家多多关注——本文来自网络收藏,不代表立场,如涉及侵权,请右击联系管理员删除。如需转载请注明出处:
