protected void SearchRecursive(TreeViewItem item, string search, List<TreeViewItem> searchResult) { if (item.displayName.ToLower().Contains(search)) { searchResult.Add(item); } foreach (TreeViewItem item2 in item.children) { this.SearchRecursive(item2, search, searchResult); } }