RemoveAt в Observable Collection, также изменяет свойство IsSelected в ListView - PullRequest
0 голосов
/ 22 февраля 2009

Я бы постарался как можно точнее.

У меня есть два объекта пользовательского интерфейса, это TabControl и ListView, оба снова связаны двумя разными списками одинаковых объектов, оба имеют свойство IsSelected, привязанное к Item.IsSelected в качестве команд модели представления,

это работает отлично, (я могу доказать это, выбрав один из источников, а другой выбор обновлен)

Моя проблема заключается в удалении одного элемента из любого из двух списков. Метод Remove, по-видимому, вызывает IsSelected в FALSE, и поэтому Item остается UNSELECTED в другом списке, в котором он все еще отображается.

Что я делаю не так ???

любая помощь будет очень признательна.

Спасибо заранее

Ответы [ 2 ]

1 голос
/ 22 февраля 2009

Происходит следующее: всякий раз, когда вы добавляете / удаляете элемент из наблюдаемой коллекции, он обновляет список. Это делает это так, что любые фильтры / представления / и т. Д. будут обновлены / перефильтрованы. Увы, он, как вы обнаружили, не поддерживает выбранный элемент в каких-либо связанных элементах управления при обновлении.

0 голосов
/ 22 февраля 2009

Это может быть либо ошибка, либо недосмотр в элементах управления. Что вы можете сделать, так это написать свой собственный метод Remove, который сохраняет выделение, удаляет элемент и затем возвращает выделение обратно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...