Как вспомнить свойство IsExpanded Treeview, связанное с XmlDataProvider, при обновлении? - PullRequest
0 голосов
/ 22 июня 2009

У меня есть древовидное представление WPF, привязанное к базе данных XmlDataProvider - источник XML используется многими ПК. Когда XmlDataProvider обновляется, все TreeViewNodes разрушаются. Я хотел бы, чтобы каждый компьютер запоминал состояние атрибута IsExpanded.

Я понимаю, что могу добавить свойство IsExpanded в XML, однако тогда оно будет обновлено на всех ПК, использующих центральный файл XML. Есть ли другие решения, чтобы помнить, какие узлы расширены?

Спасибо!

1 Ответ

0 голосов
/ 22 июня 2009

Вы можете создать классы, которые обертывают данные XML, привязать к классу, а затем добавить свойство IsExpanded в этот класс, чтобы оно влияло только на представление текущего пользователя. (Вы, вероятно, не хотите идти на всю эту работу.)

Или вы можете связать атрибут IsExpanded с конвертером, который использует некоторую особенность идентификации строки XML. Преобразователь может использовать любую внутреннюю структуру данных, чтобы запомнить, развернут ли узел или нет.

...