Ваш вопрос немного освещает детали. Например, мне было бы интересно узнать, является ли это поиском, заданным пользователем, и как будут выглядеть критерии поиска. В любом случае, я попытаюсь дать вам общий ответ на ваш общий вопрос:
WPF упрощает создание представления на основе структуры модели данных по вашему выбору, а не наоборот.
Я бы предложил создать объектную модель, которая представляет базовые данные (у вас это может быть уже есть) и «привязать» их к древовидному представлению через шаблоны данных (в частности, HierarchicalDataTemplate ). Определите свой поиск с точки зрения структуры данных, а не представления.