WPF命令绑定到祖先属性

时间:2012-09-01 17:53:12

标签: c# wpf xaml mvvm

我怀疑绑定到WPF中的祖先属性。我的情况是:我的窗口有一个视图模型作为数据上下文,所有命令都作为ICommand属性。我有一个复选框列表如下:

<ItemsControl ItemsSource="{Binding CurrentCustomer.SuppiersSelection}">
    <ItemsControl.ItemTemplate>
        <DataTemplate>
            <CheckBox FontSize="16" Content="{Binding Path=Supplier.Company}" 
                      IsChecked="{Binding Path=Selected}"></CheckBox>
        </DataTemplate>
    </ItemsControl.ItemTemplate>
</ItemsControl>

问题是:我希望每个复选框都有一个绑定到它的命令,这样当选中或取消选中供应商时,客户和供应商之间的关系就会自动保存。我的问题是命令属性在Window Data Context上,而这个复选框用作ItemControl的ItemsSource作为数据上下文。如何绑定到Window Data Context上的属性?

提前感谢您的帮助。

1 个答案:

答案 0 :(得分:3)

{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorType=Window}, Path=DataContext}

但目前尚不清楚任务是什么。 为什么不使用双向绑定并处理属性的更改?