private static void OnFocusBackgroundChanged(DependencyObject sender, DependencyPropertyChangedEventArgs e) { if (sender is FrameworkElement) { var focusBehavior = GetFocusBehavior(sender); if (e.NewValue == null) { if (focusBehavior != null) { focusBehavior.Detach(); SetFocusBehavior(sender, null); } } else { if (focusBehavior == null) { focusBehavior = new ShowFocusBehavior(); focusBehavior.Attach(sender as FrameworkElement); SetFocusBehavior(sender, focusBehavior); if (sender.ReadLocalValue(PaddingProperty) != DependencyProperty.UnsetValue) { focusBehavior.Padding = GetPadding(sender); } } focusBehavior.FocusBackgroundBrush = GetFocusBackground(sender); } } }
private static void SetFocusBehavior(DependencyObject obj, ShowFocusBehavior value) { obj.SetValue(FocusBehaviorProperty, value); }
private static void SetFocusBehavior( DependencyObject obj, ShowFocusBehavior value ) { obj.SetValue ( FocusBehaviorProperty, value ); }
private static void OnFocusBackgroundChanged(DependencyObject sender, DependencyPropertyChangedEventArgs e) { if ( sender is FrameworkElement ) { var focusBehavior = GetFocusBehavior ( sender ); if ( e.NewValue == null ) { if ( focusBehavior != null ) { focusBehavior.Detach (); SetFocusBehavior ( sender, null ); } } else { if ( focusBehavior == null ) { focusBehavior = new ShowFocusBehavior (); focusBehavior.Attach ( sender as FrameworkElement ); SetFocusBehavior ( sender, focusBehavior ); if ( sender.ReadLocalValue ( PaddingProperty ) != DependencyProperty.UnsetValue ) { focusBehavior.Padding = GetPadding ( sender ); } } focusBehavior.FocusBackgroundBrush = GetFocusBackground ( sender ); } } }