/// <summary> /// A static event listener which is invoked if a tree's node is being /// expanded. This event is being observed because nodes may need to /// be created if lazy loading is active. /// </summary> /// <param name="sender">The processed <see cref="TreeViewBase{T}"/> /// control.</param> /// <param name="e">Event arguments. The <see cref="RoutedEventArgs.OriginalSource"/> /// property provides the expanded tree node.</param> private static void OnTreeNodeExpanded(object sender, RoutedEventArgs e) { TreeViewBase <T> owner = (TreeViewBase <T>)sender; TreeViewItem treeNode = (TreeViewItem)e.OriginalSource; owner.OnNodeExpanded(treeNode); //do NOT mark as handled - the event may bubble up the tree: //e.Handled = true; }