好吧,我看了其他问题,似乎没有得到我的答案,所以希望有人在这里可以。WPF Combobox DisplayMemberPath
非常简单的问题为什么DisplayMemberPath属性不绑定到该项目?
<ComboBox Grid.Row="1" Grid.Column="2" ItemsSource="{Binding PromptList}" DisplayMemberPath="{Binding Name}" SelectedItem="{Binding Prompt}"/>
跟踪输出显示,它正试图绑定到类保持了IEnumerable不是在IEnumerable的实际项目。我很困惑,以一种简单的方式来填充组合框,而不用在xaml中添加一行。
它只是在itemssource中为对象调用ToString()。我有一个工作周围是这样的:
<ComboBox Grid.Row="1" Grid.Column="2" ItemsSource="{Binding PromptList}" SelectedItem="{Binding Prompt}">
<ComboBox.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding Name}"/>
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
但在我看来,这太过分了这样一个简单的任务。我可以使用relativesource绑定吗?
你绝对惊人,我不能相信我错过了明显的。 – Jose 2009-09-22 15:02:41
很高兴帮助! (有些填充符合SO) – 2009-09-22 15:06:33
这里同样的问题。谢谢你 - 所以再次拯救! – 2010-08-26 16:50:59