有人能告诉我如何在C#的列表框中看到所选的intems顺序? 例如,如果我在列表框中有这些元素:
我按照这个顺序选择Item4,Item2和Item5,我需要一种方法来查找如何按照上述顺序选择项目。
谢谢!
答案 0 :(得分:1)
可能会获得所选项目的索引并将其添加到数组吗?
答案 1 :(得分:0)
使用List<T>
扩大鲁道夫的想法:
List<int> selected = new List<int>();
您可以跟踪到目前为止选择的项目:
private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{
// add new selection:
foreach (int index in listBox1.SelectedIndices)
if (!selected.Contains(index)) selected.Add(index);
// remove unselected items:
for (int i = selected.Count - 1; i >= 0; i-- )
if (!listBox1.SelectedIndices.Contains(selected[i])) selected.Remove(i);
}
要测试你可以写:
for (int i = 0; i < selected.Count; i++)
Console.WriteLine("Item # " selected[i] + ": " + listBox1.Items[selected[i]]);
请注意,当您使用扩展的多选项选项时,您将获得通常的,略微奇怪的Windows选择顺序..