【发布时间】:2011-04-20 07:25:25
【问题描述】:
我有两个窗体应用程序,我们称它们为FormA.exe(父)和FormB.exe(子)。 FormB.exe 是一个可以单独运行的应用程序。 FormA.exe 是另一个应用程序,其功能之一是调用FormB.exe。
我有这两个应用程序的源代码,我可以修改它们。
目前每当FormA.exe想要调用FormB.exe,我都会使用Process类来启动FormB.exe进程。问题是
- 我不知道如何在这两个
Forms 之间传递消息。 - 当
FormB.exe被FormA调用时,它会在用户面前显示为另一个 应用程序,独立于FormA.exe,但我希望它显示为@987654334 下的单个应用程序@,FormB作为 MDI 子级。 -
FormB本身就是一个 MDI。因此,如果我将其作为 MDI 加载,我将收到此错误System.ArgumentException: Form cannot be both an MDI child and MDI parent。 - 如果我不加载为 MDI,那么我的
FormB将无法正常工作。换句话说,FormA的全部目的都丢失了。
除了将FormB 设置为FormA 的MDI 孩子之外,还有其他方法可以使一个winform 应用程序完全包含在另一个应用程序中,并使它们相互通信吗?
【问题讨论】:
-
更好的方法是把两个表单放在同一个进程中,因为你有代码
-
@David,这是一项巨大的工作量。
-
也许工作量很大,但至少有成功的希望