Beispiel #1
0
 private void OnDisplayModeChanged(HamburgerMenuDisplayMode newValue)
 {
     DisplayModeChanged?.Invoke(this, new HamburgerMenuDisplayModeChangedEventArgs {
         DisplayMode = newValue
     });
     UpdateDisplayMode(newValue, IsPaneOpen);
 }
Beispiel #2
0
        private void UpdateDisplayMode(HamburgerMenuDisplayMode displayMode, bool isPaneOpen)
        {
            switch (displayMode)
            {
            case HamburgerMenuDisplayMode.Compact:
                if (isPaneOpen)
                {
                    VisualStateManager.GoToState(this, OpenCompactState, true);
                }
                else
                {
                    VisualStateManager.GoToState(this, ClosedCompactState, true);
                }
                break;

            case HamburgerMenuDisplayMode.Expanded:
                if (isPaneOpen)
                {
                    VisualStateManager.GoToState(this, OpenExpandedState, true);
                }
                else
                {
                    VisualStateManager.GoToState(this, ClosedCompactState, true);
                }
                break;

            case HamburgerMenuDisplayMode.Minimal:
                if (isPaneOpen)
                {
                    VisualStateManager.GoToState(this, OpenMinimalState, true);
                }
                else
                {
                    VisualStateManager.GoToState(this, ClosedMinimalState, true);
                }
                break;

            default:
                break;
            }
        }