RemoveAt в Observable Collection, также изменяет свойство IsSelected в ListView


0

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

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

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

моей проблемы при удалении одного элемента из любых из двух списков. Метод Remove, по-видимому, вызывает IsSelected в FALSE, и поэтому элемент НЕ ПОЗВОЛИТ в другом списке, который он все еще отображается.

Что я делаю неправильно ???

любая помощь была бы действительно оценена.

Thnks заранее

  0

Можете ли вы разместить оскорбительный код? 22 фев. 092009-02-22 06:33:01

0

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


1

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

  0

yup Я знал, что это произошло, но мне нужно будет вернуться на 180 градусов, чтобы изменить то, что у меня есть. Это потрясающее поведение в WPF, но иногда оно влияет на вас. Я также пытался перекрыть каждый элемент управления своим собственным свойством выбора, но мне это совсем не нравится. Я думаю, что я нахожусь на Wron. 22 фев. 092009-02-22 14:59:22

  0

Yeh, если вы хотите сохранить выбор, вам нужно будет сделать свой собственный ролик :-(Мы обнаружили, что все это в моей компании пытается в основном сделать что-то подобное. 22 фев. 092009-02-22 16:34:32