public int FindStringExact (string s, int startIndex)
{
if (Items.Count == 0)
return -1; // No exception throwing if empty
if (startIndex < -1 || startIndex >= Items.Count)
throw new ArgumentOutOfRangeException ("Index of out range");
startIndex = (startIndex + 1 == Items.Count) ? 0 : startIndex + 1;
int i = startIndex;
while (true) {
if (String.Compare (GetItemText (Items[i]), s, true) == 0)
return i;
i = (i + 1 == Items.Count) ? 0 : i + 1;
if (i == startIndex)
break;
}
return NoMatches;
}