/// <summary> /// Assign Selection Changed Behavior to CommandParameter Dependency Property /// </summary> /// <param name="dependencyObject"></param> /// <param name="e"></param> private static void OnSetCommandParameterCallback(DependencyObject dependencyObject, DependencyPropertyChangedEventArgs e) { var dataGrid = dependencyObject as RadGridView; if (dataGrid != null) { RadGridViewSelectionChangedCommandBehaviour behavior = GetOrCreateBehavior(dataGrid); behavior.CommandParameter = e.NewValue; } }
private static RadGridViewSelectionChangedCommandBehaviour GetOrCreateBehavior(RadGridView dataGrid) { var behavior = dataGrid.GetValue(ClickCommandBehaviorProperty) as RadGridViewSelectionChangedCommandBehaviour; if (behavior == null) { behavior = new RadGridViewSelectionChangedCommandBehaviour(dataGrid); dataGrid.SetValue(ClickCommandBehaviorProperty, behavior); } return(behavior); }
/// <summary> /// Assign Selection Changed Behavior to Command Dependency Property /// </summary> /// <param name="dependencyObject">RadGridView</param> /// <param name="e"></param> private static void OnSetCommandCallback(DependencyObject dependencyObject, DependencyPropertyChangedEventArgs e) { try { var dataGrid = dependencyObject as RadGridView; if (dataGrid != null) { RadGridViewSelectionChangedCommandBehaviour behaviour = GetOrCreateBehavior(dataGrid); behaviour.Command = e.NewValue as ICommand; } } catch (Exception) { } }