C# WPF组合框中的选定项与字典绑定,显示完整对象,而不仅仅是值
使用WPF,我将组合框绑定到字典。项目显示正确,并且每个项目的值都正确。但是,当选择一个项目时,SelectedItem将显示整个dictionary对象,而不仅仅是值 xaml代码:C# WPF组合框中的选定项与字典绑定,显示完整对象,而不仅仅是值,c#,wpf,xaml,dictionary,combobox,C#,Wpf,Xaml,Dictionary,Combobox,使用WPF,我将组合框绑定到字典。项目显示正确,并且每个项目的值都正确。但是,当选择一个项目时,SelectedItem将显示整个dictionary对象,而不仅仅是值 xaml代码: <ComboBox Name="MyComboBox"/> c#代码: Dictionary CombBoxItems=newdictionary(); 添加(“aaa”,“我是aaa”); 添加(“bbb”,“我是bbb”); 添加(“ccc”,“我是ccc”); 添加(“ddd”,“我是dd
<ComboBox Name="MyComboBox"/>
c#代码:
Dictionary CombBoxItems=newdictionary();
添加(“aaa”,“我是aaa”);
添加(“bbb”,“我是bbb”);
添加(“ccc”,“我是ccc”);
添加(“ddd”,“我是ddd”);
添加(“eee”,“我是eee”);
添加(“fff”,“我是fff”);
MyComboBox.SelectedValuePath=“Key”;
MyComboBox.DisplayMemberPath=“值”;
MyComboBox.ItemsSource=ComboxItems;
一旦选择一个项目,它将显示如下:
所选项目应仅显示文本,就像项目本身一样
我尝试了SelectedValuePath和DisplayMemberPath的不同组合,包括内联和代码中的组合,但似乎找不到所选文本的正确组合。我看不出代码有任何问题。还缺什么吗?也许这不重要,但为什么不使用MVVM呢?您的代码似乎和您预期的一样,对我来说运行良好。然而,我怀疑一些事情。您能看到应用程序中的组合框是否有一些默认样式吗?
Dictionary<string, string> CombBoxItems = new Dictionary<string, string>();
CombBoxItems.Add("aaa", "I am AAA");
CombBoxItems.Add("bbb", "I am BBB");
CombBoxItems.Add("ccc", "I am CCC");
CombBoxItems.Add("ddd", "I am DDD");
CombBoxItems.Add("eee", "I am EEE");
CombBoxItems.Add("fff", "I am FFF");
MyComboBox.SelectedValuePath = "Key";
MyComboBox.DisplayMemberPath = "Value";
MyComboBox.ItemsSource = CombBoxItems;