WPF-App从另一个AppDomain嵌入WPF窗口/控件

时间:2011-01-13 08:14:41

标签: c# .net wpf appdomain

我有一个生成表单的程序集(它是一个客户端软件)。我可以构建一个应用程序获取和启动(显示)该表单没有任何问题。但我无法启动该表格两次,因为程序集不提供干净的封装解决方案。每隔一秒启动就会崩溃,因为有些东西不能再次初始化成功。不幸的是,无法修改程序集。

现在我把它放在一个单独的AppDomain中,以便能够卸载该程序集。这工作正常,托管应用程序现在可以多次启动该窗体。

现在问题是:我有一个WPF应用程序,它不应该显示程序集的Form,它应该包含在它自己的一个窗口中。程序集的WinForms表单已经在WindowsFormHost和WPF窗口中(带有AssemblyAppDomain)。但我无法将WPF-Window指定为主要WPF-app-windows之一的内容。它位于AssemblyAppDomain AppDomain中(并且不与对象共享对象空间)。

就我迄今为止搜索而言,应该可以在不同的AppDomains中的两个WPF窗口之间建立连接,因为这是System.AddIn的工作方式。应该使用管道合同 FrameworkElementAdapter 。我有些困惑,任何更具体的提示将不胜感激!

1 个答案:

答案 0 :(得分:2)

您检查了docs about WPF addins吗?另请查看this example