我有一个带有组合框列的数据网格视图。是否可以在下拉列表中有值,但在选择一项之后,在单元格中有此项的键?
我的钥匙-价值对:1=汽车,2=飞机,3=潜水艇.下拉列表应该显示汽车,飞机,潜艇..。当选择“平面”时,只有"2“在单元格中。
一些替罪羊?
发布于 2018-01-18 15:46:44
我认为您可以简单地使用ItemTemplate来显示您想要的属性:
<ComboBox>
<ComboBox.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<TextBlock Text="{Binding Value}" />
</StackPanel>
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>另一种选择是:
<ComboBox DisplayMemberPath="Value" />发布于 2018-01-18 16:12:19
使用DisplayMemberPath属性,将要显示的属性的名称指定为组合框项的文本。
使用SelectedValuePath属性指定要用于组合框的SelectedValue的属性的名称。
<ComboBox
DisplayMemberPath="Value"
SelectedValuePath="Key"
/>因此,如果您有一个项{ Key = 2, Value = "Plane" },用户将在combobox项中看到“平面”,当他选择时,ComboBox的SelectedValue属性将返回2,而combobox的SelectedItem属性将返回整个选定的对象{ Key = 2, Value = "Plane" }。
如果您想要以某种特殊或详细的方式显示组合框项,则ComboBox.ItemTemplate是适当的,但是如果您只需要一个属性的字符串值,则DisplayMemberPath可以简单和可读地完成这项工作。
https://stackoverflow.com/questions/48325063
复制相似问题