我目前正在使用MVVM Light Toolkit并在WPF C#中创建应用程序。我目前在我的XAML中有一个ComboBox,如下所示:
<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]
在组合框中。
答案 0 :(得分:6)
您需要在KeyValuePair
上设置DisplayMemberPath
来设置要显示的ComboBox
部分:
<ComboBox ... ItemsSource="{Binding Combo_Major_Commands}" DisplayMemberPath="Key"/>