我有这段代码:
<ComboBox
SelectionChanged="ComboBox_SelectionChanged"
x:Name="TeamList"
Style="{StaticResource ComboBoxTeamInput}"
ItemsSource="{Binding Teams}"
DisplayMemberPath="TeamName"
SelectedValuePath="TeamId"
Template="{DynamicResource ComboBoxControlTemplate1}" />
弹出菜单中的项目正确显示。但是在选择项目时,它会选择正确的项目,但显示的值有点像'System.Data.Entity .....'。
更改ControlTemplate
的{{1}}后发生此问题。在控件模板中,我只更改背景颜色。\
我的ControlTemplate看起来像这样:
ComboBox
它生成的一个,我刚改变了背景。我应该在哪里指定Label事物?
答案 0 :(得分:0)
您的新模板现在不会显示从SelectedItem显示的属性,因此它只调用该对象.ToString()方法。 添加到您希望显示的值的控制模板属性
像这样的东西
<ControlTemplate>
<Label Content="{Binding PropertyToDisplay}"/>
</ControlTemplate>
答案 1 :(得分:0)
可能无法找到动态模板,因此该条目仅以最简单的形式(WPF Fallback)显示为标签,显示项目的ToSTring()输出...看看资源是否可以被发现......