C# - Справка: Listview SelectedItems Недопустимое значение индекса
Я программирую в WindowsForms, пытаясь удалить элементы из списка с помощью кнопки. Я попытался с помощью следующего кода:
private void btnQuitar_Click(object sender, EventArgs e)
{
if(listvPrincipal.Items.Count > 0)
{
while (listvPrincipal.Items.Count > 0)
listvPrincipal.Items.Remove(listvPrincipal.SelectedItems[0]);
}
}
Но каждый раз, когда я выбираю элемент и нажимаю кнопку "Удалить", возникает следующая ошибка:
InvalidArgument = Value of '0' is not valid for 'index'.
Я искал эту проблему, но в каждом ответе говорилось, что проблема заключалась в том, что ни один элемент не был выбран, и для его решения необходимо убедиться, что " Items.Count > 0 ".
Перед тем, как нажать кнопку, убедитесь, что у меня выбран элемент.
Я использовал тот же код в другом проекте, и он работает просто отлично. Я не уверен, почему это не работает здесь. Любая идея?
1 ответ
Решение
Вы должны проверять SelectedItems
собственность не Items
имущество:
private void btnQuitar_Click(object sender, EventArgs e)
{
while (listvPrincipal.SelectedItems.Count > 0)
listvPrincipal.Items.Remove(listvPrincipal.SelectedItems[0]);
}