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