c#我有两个列表框和一个字典

时间:2017-06-15 21:42:14

标签: c# dictionary

当我从ListBox中选择一个键时,我想要两个Dictionary es和一个Listbox1 ListBox2

Dictionary<string, string> f_list = new Dictionary<string, string>();
 f_list.Add("First Shift", "Lauren");
 f_list.Add("Second Shift", "Jamey");
 f_list.Add("Third Shift", "Salem");
foreach (var t in f_list)
{
   listBox1.Items.Add(t.Key);
   listBox2.Items.Add(t.Value);
}

foreach (var t in f_list) {

  if (listBox1.selecteditem == t.Key) {

  }
}

2 个答案:

答案 0 :(得分:0)

我找到了答案

int index = 0;
foreach (var t in f_list) {
   index = listBox2.FindString(t.Value,-1);
   if (listBox1.SelectedItem.ToString() == t.Key)
   {
     listBox2.SetSelected(index, true);
   }
}

答案 1 :(得分:0)

让我修复你的代码:

string lb1Value = listBox1.SelectedItem.ToString();
if (f_list.ContainsKey(lb1Value))
{
    int index = listBox2.FindStringExact(f_list[lb1Value]);
    listBox2.SetSelected(index, true);
}

此代码应放在listBox1_OnSelectedIndexChanged()

使用字典的想法是直接访问您需要的元素。如果您要查找特定值而不是密钥,则应该只循环访问它。