具有上下文敏感工具栏的WPF应用

时间:2010-12-14 18:32:12

标签: wpf mvvm routed-commands

我想设计一个类似于Visual Studio的应用程序,其中工具栏对工作区区域敏感,并且它们是常见的工具栏,它们具有上下文敏感功能,如剪切,复制,粘贴(对于这些我可以有应用程序命令),注释选中(自定义命令)。

我想让工作区不知道工具栏控件。

我尝试使用自定义路由命令,但它只适用于可视树中的父级(气泡路由策略),但我的工具栏和工作区位于shell中的同一级别。

他们在WPF中设计这样的应用程序的具体模式(我确信必须有)吗?

1 个答案:

答案 0 :(得分:0)

我实现了您所描述的简单版本,其中工具栏具有上下文敏感的选项,只是显示或隐藏。应用程序使用MVVM模式,因此我的工具栏有一个视图模型。我利用消息总线(有时称为事件聚合器)来发布工具栏视图模型可以做出反应的消息。