我有一个简单的数据库应用程序,用户可以添加或删除人员。此外,该应用程序还有一个名为“将新按钮添加到应用程序”的按钮。该应用程序使用Prism框架构建。有两个模块:
让我们想象一种情况。我住在华盛顿,很喜欢这两个按钮(
我的要求如下:
RibbonControlModule(包含三个按钮 -
添加人员
,删除人员
,将新按钮添加到应用程序
)PersonModule(包含添加和删除人员的逻辑)
让我们想象一种情况。我住在华盛顿,很喜欢这两个按钮(
Add Person
和Delete Person
)。但是我的朋友Bob住在新泽西州,他想添加一个新的按钮Edit Button
,而不需要重新编译整个应用程序。也就是说,Bob编写了dll文件,在其中可以编辑人员信息,然后在中单击Add new button to application
。之后,EditPerson
按钮会出现在中,并可能出现在中。也许EditPerson
dll将是另一个Prism模块,我不知道。我的要求如下:
- 可插拔的控件
- 是否可以在不重新编译的情况下插入控件?(类似于浏览器中的附加组件或扩展(Opera的Classic Notes),无需重启浏览器即可使用附加组件)
- 其他程序员可以开发自己的附加组件而不使用我的源代码
- 用户插入控件后,这个新控件应始终保持插入状态。
使用WPF、MVVM和Prism是否可能?我非常喜欢Prism,不想放弃它,但如果“目的正当”,我愿意使用其他技术。
如果可能,那么我该如何做呢?