Флажок Выбранный индекс выбран
У меня есть простой оператор IF в моем коде, который я хочу запросить у пользователя, если выбран элемент в индексе 2 моего selectedlistbox1.
Он работает, когда выбран сам индекс 2, НО не работает, когда в моем поле контрольного списка отмечены другие элементы, включая индекс 2. Ниже приведено то, что у меня работает, теперь мне просто нужно, чтобы оно работало, когда выбраны 2 и другие.
if (checkedListBox1.SelectedIndex == 2)
{
MessageBox.Show("Note to send email", "Note", MessageBoxButtons.OK);
}
3 ответа
Ты можешь использовать CheckedListBox.CheckedIndices
вместо.
Коллекция проверенных индексов в этом CheckedListBox.
foreach(int index in checkedListBox1.CheckedIndices)
{
if(index == 2)
{
MessageBox.Show("Note to send email", "Note", MessageBoxButtons.OK);
}
}
Замените этот код на
if (checkedListBox1.SelectedIndices.Contains(2))
{
MessageBox.Show("Note to send email", "Note", MessageBoxButtons.OK);
}
Это проверит, если 2 среди всех выбранных пунктов.
Смотрите больше на SelectedIndices
собственность на MSDN.
Использование SelectedIndices
вместо SelectedIndex
, он возвращает коллекцию выбранных индексов. Просто убедитесь, что 2
там