【发布时间】:2013-04-30 05:22:39
【问题描述】:
我的应用程序需要打开一个UserControl,它需要一个parameter/property 才能包含一年。
今年我将让我的控件显示一些编辑值。
我遇到了一个问题,我声明的Window.Resource 部分有一个contextmenu,我正在连接到Gridview。从资源中的这个contextmenu 中,我无法直接绑定到我的ViewModel 上的Commands。
我通过在我的Xaml 中添加我的ViewModel 作为StaticResource 解决了这个问题。不幸的是,这会导致我的 xaml 生成我的 ViewModel,并且我无法传递我的参数或属性“年份”,并且当我检索我的数据时,它是为 year=0 完成的。
有没有办法替换我为上下文菜单提供的视图模型绑定,以便它可以访问我在代码中设置的视图模型?
<UserControl.Resources>
<vm:ViewModel x:Key="viewModel" />
<ribbon:ContextMenu x:Key="MyContextMenu"
x:Shared="False"
Placement="MousePoint" >
<ribbon:Menu Focusable="false">
<ribbon:Button
Command="{Binding Source={StaticResource viewModel}, Path=MyCommand}"
Label="MyLabel"/>
</ribbon:Menu>
</ribbon:ContextMenu>
</UserControl.Resources>
【问题讨论】: