Я прошу прощения за роман, но я хотел объяснить столько, сколько я сделал до сих пор.
В моем текущем проекте у меня есть приложение, которое использует сервис, который предоставляет коллекцию как <List>
.Из-за того, как я использую эти данные в приложении, мне пришлось преобразовать эти данные в наблюдаемую коллекцию.Это было сделано для того, чтобы при выборе и перемещении данных обновления пользовательского интерфейса приложения обновлялись с помощью INotifyPropertyChanged и INotifyCollectionChanged.
Когда я сталкиваюсь с проблемой сейчас, у меня есть список, связанный с наблюдаемой коллекцией внутри списка, у меня есть таблица данных, которая отображает элементы коллекции.Этот шаблон данных содержит кнопку, которая должна позволять пользователю нажимать кнопку для каждого элемента, чтобы удалить их из коллекции.Вариант использования для этого - список, в котором хранится выбранное имя, выбранное из вида сетки.Как только пользователь выбрал имена в виде сетки, они сохраняются (в наблюдаемой коллекции в виде очереди) и отображаются в пользовательском интерфейсе в элементе управления списком, который показывает все выбранные имена.Мне нужно предоставить пользователю возможность удалять эти имена в любом выбранном порядке.
Из того, что я читал, нет средств для перечисления / индексации наблюдаемой коллекции.В таких ситуациях вы должны использовать List или Array.Однако для обновления элементов в представлении списка они должны быть в наблюдаемой коллекции.Из того, что я прочитал, видно, что когда событие инициируется, мне нужно преобразовать наблюдаемую коллекцию в массив, а затем вычислить массив для определения индекса и затем удалить запись соответствующим образом?
Я думаю, что я, возможно, не в этом разбираюсь, так как мне кажется, что я уже закончил эту проблему?Вышеупомянутый сценарий не кажется правильным, потому что я упал, как будто я делаю много преобразований в и из коллекций, чтобы просто удалить запись?Кто-нибудь знает эффективные средства для удаления записей из коллекции (в любом выбранном порядке), когда коллекция отображается как элемент управления в списке?Я успешно удалил последнюю запись, добавленную в коллекцию, используя RemoveAt (), однако я не имел никакого успеха в случайном удалении записей.
Запоздалая мысль: Часть этой проблемы может быть связана с тем фактом, что у меня есть кнопка, вставленная в шаблон данных (элемент управления), и в результате этот элемент фактически не выбирается дособытие срабатывает на событие кнопки?Прошу прощения за бессвязную речь, но я часами занимался этим и добился незначительного прогресса.Любые советы или идеи будут оценены!