diff --git a/src/Avalonia.Controls/SplitButton/SplitButton.cs b/src/Avalonia.Controls/SplitButton/SplitButton.cs index bee9a5335f..e2dda56758 100644 --- a/src/Avalonia.Controls/SplitButton/SplitButton.cs +++ b/src/Avalonia.Controls/SplitButton/SplitButton.cs @@ -14,24 +14,45 @@ namespace Avalonia.Controls /// The primary part behaves like a and the secondary part opens a flyout. /// [PseudoClasses( - ":disabled", - ":secondary-button-right", - ":secondary-button-span", - ":checked-flyout-open", - ":flyout-open", - ":checked-touch-pressed", - ":checked", - ":checked-primary-pressed", - ":checked-primary-pointerover", - ":checked-secondary-pressed", - ":checked-secondary-pointerover", - ":touch-pressed", - ":primary-pressed", - ":primary-pointerover", - ":secondary-pressed", - ":secondary-pointerover")] + pcDisabled, + pcSecondaryButtonRight, + pcSecondaryButtonSpan, + pcCheckedFlyoutOpen, + pcFlyoutOpen, + pcCheckedTouchPressed, + pcChecked, + pcCheckedPrimaryPressed, + pcCheckedPrimaryPointerOver, + pcCheckedSecondaryPressed, + pcCheckedSecondaryPointerOver, + pcTouchPressed, + pcPrimaryPressed, + pcPrimaryPointerOver, + pcSecondaryPressed, + pcSecondaryPointerOver)] public class SplitButton : ContentControl, ICommandSource { + private const string pcDisabled = ":disabled"; + + private const string pcSecondaryButtonRight = ":secondary-button-right"; + private const string pcSecondaryButtonSpan = ":secondary-button-span"; + + private const string pcCheckedFlyoutOpen = ":checked-flyout-open"; + private const string pcFlyoutOpen = ":flyout-open"; + + private const string pcCheckedTouchPressed = ":checked-touch-pressed"; + private const string pcChecked = ":checked"; + private const string pcCheckedPrimaryPressed = ":checked-primary-pressed"; + private const string pcCheckedPrimaryPointerOver = ":checked-primary-pointerover"; + private const string pcCheckedSecondaryPressed = ":checked-secondary-pressed"; + private const string pcCheckedSecondaryPointerOver = ":checked-secondary-pointerover"; + + private const string pcTouchPressed = ":touch-pressed"; + private const string pcPrimaryPressed = ":primary-pressed"; + private const string pcPrimaryPointerOver = ":primary-pointerover"; + private const string pcSecondaryPressed = ":secondary-pressed"; + private const string pcSecondaryPointerOver = ":secondary-pointerover"; + /// /// Raised when the user presses the primary part of the . /// @@ -164,27 +185,6 @@ namespace Avalonia.Controls /// protected void UpdatePseudoClasses() { - string pcDisabled = ":disabled"; - - string pcSecondaryButtonRight = ":secondary-button-right"; - string pcSecondaryButtonSpan = ":secondary-button-span"; - - string pcCheckedFlyoutOpen = ":checked-flyout-open"; - string pcFlyoutOpen = ":flyout-open"; - - string pcCheckedTouchPressed = ":checked-touch-pressed"; - string pcChecked = ":checked"; - string pcCheckedPrimaryPressed = ":checked-primary-pressed"; - string pcCheckedPrimaryPointerOver = ":checked-primary-pointerover"; - string pcCheckedSecondaryPressed = ":checked-secondary-pressed"; - string pcCheckedSecondaryPointerOver = ":checked-secondary-pointerover"; - - string pcTouchPressed = ":touch-pressed"; - string pcPrimaryPressed = ":primary-pressed"; - string pcPrimaryPointerOver = ":primary-pointerover"; - string pcSecondaryPressed = ":secondary-pressed"; - string pcSecondaryPointerOver = ":secondary-pointerover"; - // Place the secondary button // These are mutually exclusive PseudoClasses handled separately from SetExclusivePseudoClass(). // They must be applied in addition to the others.