private static void OnSetCommandParameterCallback(DependencyObject dependencyObject, DependencyPropertyChangedEventArgs e) { ListViewItem controlToWhomWeBind = dependencyObject as ListViewItem; if (controlToWhomWeBind != null) { ListViewItemDoubleClickCommandBehaviour behavior = GetOrCreateBehavior(controlToWhomWeBind); behavior.CommandParameter = e.NewValue; } }
private static ListViewItemDoubleClickCommandBehaviour GetOrCreateBehavior( ListViewItem controlToWhomWeBind) { ListViewItemDoubleClickCommandBehaviour behavior = controlToWhomWeBind.GetValue(DoubleClickCommandBehaviorProperty) as ListViewItemDoubleClickCommandBehaviour; if (behavior == null) { behavior = new ListViewItemDoubleClickCommandBehaviour(controlToWhomWeBind); controlToWhomWeBind.SetValue(DoubleClickCommandBehaviorProperty, behavior); } return(behavior); }