小编Cgt*_*Cgt的帖子

从 ItemsControl 绑定到父 DataTemplate 属性

假设我有这个 ViewModel 和 xaml:

class MyViewModel
{
    public MyStringValue {get;set;} = "HelloWorld"

    public IList<CustomObject> ChildViewModels{get;set;}
}

<DataTemplate DataType="{x:Type local:MyViewModel}">
    <ItemsControl ItemsSource="{Binding ChildViewModels}">
        <ItemsControl.ItemTemplate>
            <DataTemplate>
                <Grid>
                    <TextBlock Text="{Binding Path=MyStringValue,
                        RelativeSource={RelativeSource Mode=FindAncestor,
                        AncestorType={x:Type local:MyViewModel}}}"/>
                </Grid>
            </DataTemplate>
        </ItemsControl.ItemTemplate>
    </ItemsControl>
</DataTemplate>
Run Code Online (Sandbox Code Playgroud)

我不断收到此错误消息:“无法找到使用引用 'RelativeSource FindAncestor ... 进行绑定的源...” 所以基本上,我正在尝试绑定 ItemsControl 的父属性容器,但似乎我不能。

c# data-binding wpf xaml mvvm

0
推荐指数
1
解决办法
2534
查看次数

标签 统计

c# ×1

data-binding ×1

mvvm ×1

wpf ×1

xaml ×1