Цикл ObservableCollection для динамического расширения вложенных элементов - PullRequest
0 голосов
/ 05 октября 2018

Я создаю функцию папки default в проводнике файлов на основе дерева, это позволяет системе открывать папки на основе пути по умолчанию on load.

Поскольку вы знаете, что вам нужно использовать *Функция 1005 * для открытия treeviewitem.

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

Вот очень плохой код (он не динамический и плохо пахнет): bad code for the expander

Запуск кодавыше достигает (во время выполнения):

Folder view

Чтобы уточнить вопрос: этот код пахнет и не 't dynamic Есть ли что-то более простое, чем циклически проходить по каждой папке, чтобы найти папку, развернуть ее и зайти внутрь этой папки и сделать то же самое?

Я счастлив добавить что-нибудьна этот вопрос, который может помочь, и ответить на любой желающий помочь.

Спасибо всем!

1 Ответ

0 голосов
/ 05 октября 2018

Вы можете использовать рекурсивный метод:

private void Expand(DirectoryItemViewModel dvm)
{
     dvm.IsExpanded = true;
     foreach(DirectoryItemViewModel item in dvm.Children)
         Expand(item);
}

использовать его Как:

foreach(DirectoryItemViewModel item in Items)
     Expand(Item);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...