visual studio问题我试图运行不同的windows窗体,但一旦我启用我的引用TrackerLibrary,我的应用程序。运行只能在启用我的参考之前运行它的最后一个表单。有什么办法能解决这个问题吗?(新编码,所以我不知道我是否错过了什么)
应用。Run方法是启动应用程序的方法,除非用户退出应用程序,否则程序不会通过该方法调用。
使用Application.Run(Form mainForm)
将只允许您以一个打开的表单启动应用程序,并且当该表单关闭时应用程序将退出。
如果您想在开始时打开多个Form,请考虑使用Application.Run(ApplicationContext context)
。应用程序。运行方法文档
您的应用程序不会"卡在一个表单上"。您可以打开任意多的其他表单。您不能做的是在应用程序退出之前关闭第一个表单。当您调用Application.Run
并传递一个表单时,该方法将返回当且仅当该表单关闭时,此时您的Main
方法也将完成,如果您在Application.Run
调用后没有更多的代码。
如果你想在没有应用程序退出的情况下关闭一个表单,那么你不能将该表单传递给Application.Run
。您可以做的是从ApplicationContext
中派生自己的类,然后创建该类的实例并将其传递给Application.Run
。然后,你可以在这个类中放入任何你想要的逻辑来打开和关闭任意多的表单。
我不打算在这里提供任何代码因为我不知道你具体想做什么。最好按照上面的链接,通过它提供的示例来理解这个概念,然后根据需要实现它。您可能还想在这里查看我自己使用自定义ApplicationContext
的示例。