public void ToggleStylingState(StylingState stylingState, bool enable)
    {
        if (BitOperations.PopCount((uint)stylingState) != 1)
        {
            throw new ArgumentException(
                      "Can only set or unset a single styling-state at once: " + (uint)stylingState);
        }

        var currentState = (_stylingStates & stylingState) != 0;

        if (currentState != enable)
        {
            if (enable)
            {
                _stylingStates |= stylingState;
            }
            else
            {
                _stylingStates &= ~stylingState;
            }

            Host?.NotifyStyleChanged();
        }
    }
 public bool HasPseudoClass(StylingState stylingState)
 {
     return((_stylingStates & stylingState) == stylingState);
 }