WPF - 嵌套属性的DisplayMemberPath

时间:2017-07-05 15:25:56

标签: wpf data-binding

我的一个组合框,其ItemsSource属性绑定到我的City类型的ICollectionView。

反过来,City包含一个Address属性,其中包含AddressNameString。

我可以将其设置为DispalyMemberPath AddressNameString属性,但似乎无法实现。

不是吗?有一些解决方法吗?

1 个答案:

答案 0 :(得分:1)

DisplayMemberPath设置为嵌套属性路径应该有效:

DisplayMemberPath="Address.AddressNameString"

您还可以使用ItemTemplate属性而不是DisplayMemberPath属性:

<ComboBox ItemsSource="{Binding Cities}">
    <ComboBox.ItemTemplate>
        <DataTemplate>
            <TextBlock Text="{Binding Address.AddressNameString}" />
        </DataTemplate>
    </ComboBox.ItemTemplate>
</ComboBox>

确保该属性是公开的,并且您没有拼错XAML中的属性名称。