wpf ComboBox所选项目在下拉列表中显示不同的文本然后显示项目

时间:2018-03-19 14:34:48

标签: c# wpf combobox

我有一个ComboBox,其中包含用户可以选择的颜色列表。当用户点击带有颜色名称的颜色列表时,会为每个项目显示颜色的小图片。这部分工作正常。我无法工作的部分是一旦选择了一个项目,例如,如果用户选择红色,ComboBox会说“颜色[红色]”,我只想让它显示红色。

XAML

<ComboBox x:Name="mycbox" IsEditable="True" Background="#FFE5E5E5" HorizontalAlignment="Left" Margin="21,133,0,0" VerticalAlignment="Top" Width="82">      
     <ComboBox.ItemTemplate>
         <DataTemplate>
             <StackPanel Orientation="Horizontal">
                  <Rectangle Fill="{Binding Name}" Width="16" Height="16" Margin="0,2,5,2"/>
                  <TextBlock Text="{Binding Name}"/>
              </StackPanel>
          </DataTemplate>
       </ComboBox.ItemTemplate>                                
 </ComboBox>

背后的代码

private List<Color> colors = new List<Color>() {  Red, Green, Blue, Cyan, Magenta, Yellow, Orange, Purple};

mycbox.ItemSource = colors;

Here is an example of what my combo box items look like, to use as a reference.

1 个答案:

答案 0 :(得分:2)

  

我怎样才能将ComboBox.SelectedItem变为&#34; Red&#34;而不是&#34;颜色[红色]&#34;?

TextSearch.TextPath的{​​{1}}属性设置为&#34;名称&#34;。

ComboBox