Как удалить выбранный элемент в C # - PullRequest
0 голосов
/ 12 апреля 2019

Я создаю список под названием listBoxobj. Я хочу удалить список на основе выбранного списка, но сейчас проблема в том, что при удалении он будет удалять по индексу, а не по выбранному элементу.

Это приложение, которое разрабатывается в Visual Studio под управлением SQLite.

Я уже пытался использовать этот код, но сохранить не удалось

foreach ( ListViewItem eachItem in listBoxobj.SelectedItems)
{
    listBoxobj.Items.Remove(eachItem);
}

Я хочу, чтобы выбранный просмотр списка был удален вместо просмотра списка по индексу

private void DeleteMV_Click(object sender, RoutedEventArgs e)
{
    DatabaseHelperMV_Meriam delete = new DatabaseHelperMV_Meriam();
    x = listBoxobj.SelectedItems;//this line keep getting error
    delete.DeleteId(x);
    Frame.Navigate(typeof(MV_MeriamViewData));
}

1 Ответ

2 голосов
/ 12 апреля 2019

Для WinForms:

Вы удаляете список просмотра выбранного элемента, используя это:

listBoxobj.SelectedItems[0].Remove();

Этот код у вас есть:

foreach ( ListViewItem eachItem in listBoxobj.SelectedItems)
{
   listBoxobj.Items.Remove(eachItem);
}

Исправлено, если у вас есть multiselect = true ... но если у вас есть multiselect = false, используйте это: listBoxobj.SelectedItems[0].Remove();

Для WPF:

private void ListView_SelectionChanged(object sender, SelectionChangedEventArgs e)
{     
    var selected = listBoxobj.SelectedItems.Cast<Object>().ToArray();
    foreach (var item in selected)
    {
        listBoxobj.Items.Remove(item);
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...