private static void OnSetCommandParameterCallback(DependencyObject dependencyObject, DependencyPropertyChangedEventArgs e) { XamDataTree tree = dependencyObject as XamDataTree; if (tree != null) { XamDataTreeNodeUnselectedCommandBehavior behavior = GetOrCreateBehavior(tree); behavior.CommandParameter = e.NewValue; } }
private static XamDataTreeNodeUnselectedCommandBehavior GetOrCreateBehavior(XamDataTree tree) { XamDataTreeNodeUnselectedCommandBehavior behavior = tree.GetValue(DataItemUnselectedProperty) as XamDataTreeNodeUnselectedCommandBehavior; if (behavior == null) { behavior = new XamDataTreeNodeUnselectedCommandBehavior(tree); tree.SetValue(DataItemUnselectedProperty, behavior); } return(behavior); }