如何在列表框中从数组中突出显示/选择列表项?

时间:2014-05-06 06:32:15

标签: c# asp.net arrays listbox

我有一个包含3个列表项的列表框(bob,peter,john)。如何根据数组中适用的内容选择/突出显示列表项。目前我有这个:

string names = reader["staffName"].ToString();
string[] selectedName = names.Split(',');

for (int i = 0; i < selectedName.Length; i++)
{
  lbName.SelectedIndex = lbName.Items.IndexOf(lbName.Items.FindByValue(selectedName[i]));
}

但它只突出显示数组中的最后一项。例如selectedName由2个名称(bob和john)组成,但只有john突出显示

1 个答案:

答案 0 :(得分:1)

首先,您应该检查lbName.SelectionMode是否为ListSelectionMode.Multiple

然后你应该以下

string names = reader["staffName"].ToString();
string[] selectedName = names.Split(',');

lbName.SelectedIndex = -1;

foreach (var name in selectedName)
{
    lbName.Items.First(item => item.Value == name).Selected = true;
}