2017-07-05 68 views
-1

我有一个ItemSource属性绑定到我的ICollectionView城市类型的组合框。WPF - 嵌套属性的DisplayMemberPath

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

我将能够设置为DispalyMemberPath AddressNameString属性,但它似乎不可能实现。

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

回答

1

设置DisplayMemberPath到嵌套属性路径应该工作:

DisplayMemberPath="Address.AddressNameString" 

你也可以使用,而不是DisplayMemberPath属性ItemTemplate属性:

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

确保财产是公开的,您没有拼错XAML中的属性名称。

+0

然后你可能拼写错了属性名称。请张贴您的课堂定义。 – mm8

+1

这是我的错误。你是对的。非常感谢你。 – bit