如何从通过 MEF 注入的代码创建向导界面?

发布于 2024-12-01 22:18:03 字数 586 浏览 1 评论 0原文

我想在MVVM、MEF的基础上写Wizard。 我希望向导的每个页面都是从单独的 dll (MEF) 加载的。 我发现这篇关于创建向导的优秀 文章 ,但不幸的是,本文并未写为使用 MEF 添加页面。 我想按照文章中所述制作向导,但我不知道如何使用 MEF 导出向导页面。


我编写了一个简单的应用程序来说明我的问题。 该解决方案包含两个程序集。

在此处输入图像描述

如何从 WpfApplication4 中的程序集 WpfApplication4.Library 获取完整的页面。

我的意思是已安装 PageViewModel 的 PageView。

Mef

I would like to write Wizard on the basis of MVVM, MEF.
I would like that each page of the Wizard was loaded from separate dll (MEF).
I found this excellent article about creation of the wizard, but unfortunately in this article is not written as to use MEF for addition of pages.
I want to make the wizard just as described in the article but I can't think how to export page of the wizard using MEF.


I wrote a simple application to illustrate my problem.
This solution contains two assemblies.

enter image description here

How can I get a fully-formed page from the assembly WpfApplication4.Library in WpfApplication4.

I mean PageView with installed PageViewModel.

Mef

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

凉城已无爱 2024-12-08 22:18:03

本文描述了拥有一个视图模型列表,例如,您可以为页面 IWizardPage 定义一个契约,然后使用 ImportMany 属性导入这样的列表:(

...
[ImportMany]
IWizardPage[] Pages{ get; set }

实际的 >IWizardPage 界面可以为空,如果你愿意)

然后你可以像文章描述的那样将那些页面添加到实际的向导主窗口中

The article describes having a list of viewmodels, you could define a contract for your pages IWizardPage for example and then import such a list using the ImportMany attribute:

...
[ImportMany]
IWizardPage[] Pages{ get; set }

(the actual IWizardPage interface can be empty if you want)

Then you can add those pages like the article describes to the actual wizard main window

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文