我一直在关注股票交易者应用程序的 Prism 参考实现。我正在按照相同的方式构建应用程序。但我对如何以 Prism 方式向我的应用程序添加菜单有点困惑。参考实现似乎对此并不明确。任何建议都会非常可观。
问问题
4223 次
2 回答
2
模块化应用程序可以帮助做很多事情,但它们也会使一些以前微不足道的任务看起来非常困难。我同意你的观点,棱镜书至少应该给出一些关于如何做菜单的例子,但可能有很多方法可以做到。
当我开始在 Stackoverflow 上使用 Prism 时,我问了同样的问题。一段时间后我回来并回答了我自己的问题。我的解决方案是创建一个 IMenuService,它允许我将菜单项添加到我的菜单中,该菜单是一个单独的模块。请在此处查看我对自己问题的回答:
于 2013-05-12T08:02:32.837 回答
1
为了制作动态菜单,我使用了区域。我在其中做的第一件事ShellView
是添加一个菜单并在其中设置一个区域。
<Menu prism:RegionManager.RegionName="MenuRegion">
</Menu>
当我在我的模块中需要一个菜单时,我会创建一个这样的用户控件:
<MenuItem x:Class="MyCompany.PrismApp.HelloWorldMenu">
<!-- ... -->
</MenuItem>
更改后面的代码以让类反映类型MenuItem
:
public partial class HelloWorldMenu : MenuItem
{
// ...
}
的实施IModule
public class SomeModule : IModule
{
public void Initialize()
{
// ...
this.RegionManager.RegisterViewWithRegion("MenuRegion", typeof(HelloWorldMenu));
}
}
一切都是香草棱镜。
于 2016-02-12T08:56:38.177 回答