ListBox.SelectedIndices has a bug but fortunately there is a workaround.
This occurs in C# 3.5 when ListBox.SelectionMode = MultiExtended.
The first item in a listbox has a zero-based index of 0. However, you can't add index 0 to SelectedIndices. See below:
BUG:
ListBox.Items.Clear();
int index = ListBox.Items.Add("First item in list"); // index = 0
ListBox.SelectedIndices.Add(index); // Index = 0 is added to SelectedIndices
int selected = ListBox.SelectedIndices.Count; // Will equal 0 but it should be 1
Workaround:
ListBox.Items.Clear();
int index = ListBox.Items.Add("DELETE ME"); // index = 0
index = ListBox.Items.Add("First item in list"); // index = 1
ListBox.SelectedIndices.Add(index); // index = 1 is added to SelectedIndices
ListBox.Items.RemoveAt(0); // Get rid of the "DELETE ME" item
int selected = ListBox.SelectedIndices.Count; // Will equal 1 as expected
Bill