thanks!
Koren
private void SearchList(string searchValue)
{
ControlTemplate tt = (ControlTemplate)baseFrameworkElement.FindResource("NavigationContentTemplate");
ContentControl tc = (ContentControl)baseFrameworkElement.FindName("NavigationContent");
_treeView = tt.FindName("NavigationList", tc) as RadTreeView;
//_treeView.ExpandAll();
//_treeView.CollapseAll();
SearchTree(searchValue.ToLower(), _treeView);
}
private void SearchTree(string searchValue, ItemsControl item)
{
for (int i = 0; i < item.Items.Count; i++)
//foreach (var _dataItem in item.Items)
{
//RadTreeViewItem _childItem = treeView.ContainerFromItemRecursive(_dataItem);
RadTreeViewItem _childItem = item.ItemContainerGenerator.ContainerFromIndex(i) as RadTreeViewItem;
if (_childItem != null)
{
//MessageBox.Show(_childItem.ToString());
if (_childItem.Item is Association)
{
Association _childObject = _childItem.Item as Association;
if (_childObject.AssociationName.ToLower().Contains(searchValue))
{
if (_childItem.ItemContainerGenerator.Status == System.Windows.Controls.Primitives.GeneratorStatus.ContainersGenerated)
{
_childItem.IsExpanded = true;
_childItem.BringIntoView();
}
}
}
else if (_childItem.Item is Economist)
{
Economist _childObject = _childItem.Item as Economist;
if (_childObject.EconomistName.ToLower().Contains(searchValue))
{
if (_childItem.ItemContainerGenerator.Status == System.Windows.Controls.Primitives.GeneratorStatus.ContainersGenerated)
{
_childItem.IsExpanded = true;
_childItem.BringIntoView();
}
}
}
else if (_childItem.Item is Farm)
{
Farm _childObject = _childItem.Item as Farm;
if (_childObject.FarmName.ToLower().Contains(searchValue) || _childObject.FarmNbr.Contains(searchValue))
{
if (_childItem.ItemContainerGenerator.Status == System.Windows.Controls.Primitives.GeneratorStatus.ContainersGenerated)
{
_childItem.IsExpanded = true;
//_childItem.IsSelected = true;
_childItem.BringIntoView();
}
}
}
SearchTree(searchValue, _childItem);
}
}
}