我的绑定不能正常工作。我的ActiveView有一个ListView (x:Name="MyListView")和一个视图模型作为它的数据上下文。
我有以下RibbonButton (RibbonControlLibrary):
<r:RibbonButton Label="Update Software"
LargeImageSource="/Ganymed.App.UI;component/Images/plain-update.png"
Command="{Binding ActiveView.DataContext.UpdateSoftwareCommand}"
CommandParameter="{Binding ActiveView.MyListView.SelectedItems}"/>命令绑定本身工作得很好。但是我不能让CommandParameter工作。我想要发送ActiveView的ListView的选定项,以便决定是否启用该命令。绑定CommandParameter时,我是否遗漏了什么?
要澄清结构:
MainWindow.xaml (包含RibbonButton,DataContext = MainWindowViewModel)
MainWindowViewModel.cs包含属性ActiveView
ActiveView (包含MyListView,DataContext = ActiveViewViewModel)
ActiveViewViewModel.cs包含UpdateSoftwareCommand
任何帮助都是最好的。谢谢
发布于 2012-03-17 05:12:00
一种可能性是:
CommandParameter="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type r:RibbonButton}}, Path=SelectedItems}"另一种方法是,你可以在你的ViewModel中添加一个属性SelectedItems,绑定它,让它始终保持同步,并为命令的操作做好准备
https://stackoverflow.com/questions/9739738
复制相似问题