WPF DataBinding(CommandParameter不工作)

时间:2012-03-16 15:06:34

标签: wpf data-binding command commandparameter

我无法让我的约束力发挥作用。我的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

任何帮助都会很棒。感谢

1 个答案:

答案 0 :(得分:0)

一种可能性:

 CommandParameter="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type r:RibbonButton}}, Path=SelectedItems}"

另外,您可以将一个属性SelectedItems添加到ViewModel中,绑定它并让它始终保持同步并准备好运行命令

相关问题