2015-02-03 7 views
0

У меня есть окно списка, связанное с набором элементов. Всякий раз, когда я вызываю Refresh на CollectionView связанных предметов, adorners исчезают из элементов списка.WPF Adorner и ICollectionView Refresh

Может кто-нибудь объяснить, почему и как я могу это преодолеть? Должен ли я повторно добавлять украшения после каждого обновления?

ответ

1

Adorner связан с определенным элементом, в вашем случае кажется, что вы украшаете ListBoxItem элементов.

Когда вы вызываете метод Refresh в виде коллекции, это приведет к тому, что элемент управления ListBox удалит все его существующие дети ListBoxItem и заново их создаст. Ваши рекламодатели «исчезают», потому что элементы, которые они украшают, были удалены в списке.

Вы можете либо воссоздать украшения, либо попытаться найти какой-то способ обновить окно списка, которое не включает обновление коллекции.

Смежные вопросы