我是WPF和MVVM领域的绝对新手。但我所知道的一点点让我想深入挖掘。听起来很刺激!
我正在使用来自http://fluent.codeplex.com/的流畅功能区控件。每个功能区选项卡都有一个关联的视图和一个ViewModel。我使用SelectedTabChanged事件进行此更改,该事件在选择选项卡时被触发。 SelectionChangedEventArgs的AddedItems集合具有新选项卡的名称,因此我可以在类后面的代码中使用它来完成它。
我想知道如果不执行任何代码,这是否可行。我尝试附加一个依赖项对象,以便可以将该事件作为命令附加到视图模型中。但是在最后一个例子中失败了,因为看起来Fluent Ribbon并不是来自DepedencyObject。
提前感谢您的想法和观点。
答案 0 :(得分:0)
您是在运行时动态添加标签,还是在xaml中定义标签?
如果您在xaml中定义它们,那么您需要做的就是为主窗口提供一个主视图模型,它包含不同选项卡的视图模型的实例。然后应将这些属性公开为属性,然后您可以将每个选项卡的datacontext绑定到该属性。
如果在功能区上有“选定项目”,“选定选项卡”或某些此类属性,则可以将其绑定到主vm中的“CurrentTab”属性,如果您需要知道选择了哪个选项卡。