visual-studio - 将 UI(设计器/编辑器)逻辑与包框架(如 Visual Studio 包)分离的最佳方法是什么

标签 visual-studio user-interface vsx

我想在这里分开关注点。创建自定义 XML 设计器、对象模型、验证等的所有 UI 逻辑并将其嵌入到单独的程序集中。然后 Package 框架应该只注册设计者信息并请求 UI 服务,一切都会神奇地进行。

这样,当我需要修改 UI 设计器时,我不需要使用 Package 框架(Visual Studio Package)程序集。

这个问题也适用于任何必须将 UI 逻辑与加载它的骨架框架分离的情况,例如插件。

我有多种选择:ServiceProvider 模型、插件模型或其他模型。

欢迎提供任何示例、模式建议、链接。

更新 1:我正在寻找的是这样的想法:“Prism(复合 WPF)符合要求吗?有人从事过像我上面提到的那样实现关注点分离的项目/应用程序吗?等等” (我仍在寻找答案)

最佳答案

我创建了一个加载编辑器的 VSPackage。编辑器位于单独的程序集中并实现我定义的接口(interface)。 VSPackage 与界面配合使用,因此只要我不更改界面,我对编辑器(及其程序集)所做的任何更改都不会影响 VSPackage。

关于visual-studio - 将 UI(设计器/编辑器)逻辑与包框架(如 Visual Studio 包)分离的最佳方法是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/158420/

相关文章:

visual-studio - 您如何开发 Visual Studio 加载项?

.net - Visual Studio 2008 和覆盖现有文件扩展名的语言服务

asp.net-mvc - MVC T4 MvcTextTemplateHost 和自定义 "Controller"T4 模板

c# - 如何获取当前的 Active Solution Platform 名称以用于 Visual Studio 加载项? (C#)

ios - 每次在按钮中完成点击时执行一个方法

python - 导入错误 : No module named _imagingtk

python - 类似于 Python GUI 中资源管理器的图标 GridView

c++ - 在 VS2015 Update 3 中构建 OpenCV 3.2 时,xtr1common 出现大量错误

c# - 按钮内的 WPF 按钮单击问题

winforms - 为什么 Windows 窗体 TextBox 中的 AutoSize 属性没有出现在 IntelliSense 中