2017-07-06 59 views
0

所以我有一个WPF AutoCompleteBox风格的DataTemplate绑定ValueMemberPath内容

<controls:AutoCompleteBox ItemsSource="{Binding Nationalities}" SelectedItem="{Binding IDIssueCountry, Mode=TwoWay}" ValueMemberPath="NationalityName"/> 

为此,我想它的内容势必ValueMemberPath价值的ItemTemplate样式:提前

<Setter Property="ItemTemplate"> 
    <Setter.Value> 
     <DataTemplate> 
      <Label Content="{What Binding to put here to get ValueMemberPath's value}"/> 
     </DataTemplate> 
    </Setter.Value> 

感谢

PS:TemplateBinding找不到ValueMemberPath ..

回答

0

那这个呢?

<Label Content="{Binding NationalityName}"/> 

应工作假设NationalityName是一个项目的Nationalities集合中的一个属性。

请注意,您不能在LabelContent属性绑定到其名称由ValueMemberPath规定,如果这就是你正在尝试做的财产。

ValueMemberPath的值由控件在内部使用,以使用反射来获取底层数据对象的值。

+0

是的,但这种风格默认使用,它会有不同的项目,例如公司与其他名称。这就是为什么我想要获取ValueMemberPath的值 –

+0

无法绑定到属性*,其名称*由纯XAML中的ValueMemberPath属性指定。您需要指定要绑定的*属性*的名称。您不能指定保存要绑定到的属性名称的属性名称。所以这恐怕是不可能的。 – mm8