首页 > 解决方案 > 来自 DataTemplate 的相对数据绑定

问题描述

DataContext在这种情况下,与父元素的数据绑定{Binding RelativeSource={...}对我不起作用。我玩弄了不同的输入AncestorTypeAncestorLevel但找不到要绑定的源...

这是 XAML 标记:

            <ListView ItemsSource="{Binding ProjectGroups}" SelectedItem="{Binding SelectedProjectGroup}" HorizontalContentAlignment="Stretch">
                <ListView.ItemTemplate>
                    <DataTemplate>
                        <Label Content="{Binding Name}">
                            <Label.ContextMenu>
                                <ContextMenu>
                                    <MenuItem Header="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type ListView}}, Path=DataContext.DeleteText}" Command="{Binding DeleteGroup}"></MenuItem>
                                </ContextMenu>
                            </Label.ContextMenu>
                        </Label>
                    </DataTemplate>
                </ListView.ItemTemplate>
            </ListView>

如您所见,我正在尝试将内部元素的属性绑定到与外部元素MenuItem相同的属性。DataContextListView

我错过了什么?为什么这不起作用?

标签: wpfdata-binding

解决方案


推荐阅读