2013-07-15 39 views
2

我正在使用MVVM Light Toolkit并在WPF C#中创建应用程序。我现在有一个组合框在我的XAML像这样:将文本框绑定到字典的键

<ComboBox Height="23" HorizontalAlignment="Left" Margin="367,39,0,0" Name="comboBox1" VerticalAlignment="Top" Width="156" ItemsSource="{Binding Combo_Major_Commands}"/> 

并在代码:

private Dictionary<string, string> _combo_Major_Commands; 
public Dictionary<string, string> Combo_Major_Commands 
{ 
    get { return _combo_Major_Commands; } 
    private set; 
} 

现在在我的运行时代码我初始化它,并添加我需要像这样的项目:

_combo_Major_Commands = new Dictionary<string, string>(); 
_combo_Major_Commands.Add("Standby", "STBY"); 
_combo_Major_Commands.Add("Operate", "OPER"); 
_combo_Major_Commands.Add("Remote", "REMOTE"); 
_combo_Major_Commands.Add("Local", "LOCAL"); 

有什么办法可以将我的ComboBox绑定到键值上吗?目前它绑定到整个值并显示以下内容

[Standby, STBY] 

在组合框中。

回答

6

您需要设置要显示其KeyValuePair部分通过设置DisplayMemberPathComboBox

<ComboBox ... ItemsSource="{Binding Combo_Major_Commands}" DisplayMemberPath="Key"/>