Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Suggestion - HamburgerMenu Scrolling #954

Closed
amkuchta opened this issue Feb 16, 2017 · 15 comments
Closed

Suggestion - HamburgerMenu Scrolling #954

amkuchta opened this issue Feb 16, 2017 · 15 comments

Comments

@amkuchta
Copy link
Contributor

Issue

If the window is sized to be smaller than the height of the HamburgerMenu, OptionsListView overlaps ButtonsListView. Additionally, the Scrollbar is only visible when the HamburgerMenu is expanded.

Suggestion

Ideally, the PaneRoot would not be allowed to have a height smaller than is required to show all of the items in the pane. My suggestion is to use a DockPanel wrapped in a ScrollViewer to host the ListBox controls and to move the ScrollViewer scrollbar to the left side to have it constantly visible, when needed. An example implementation is shown below:

<ScrollViewer VerticalAlignment="Stretch" FlowDirection="RightToLeft">
  <DockPanel VerticalAlignment="Stretch" FlowDirection="LeftToRight">
    <ListBox x:Name="ButtonsListView" DockPanel.Dock="Top" VerticalAlignment="Top">
      <ListBoxItem ... />
      <ListBoxItem ... />
      <ListBoxItem  ... />
    </ListBox >
    <ListBox x:Name="OptionsListView" DockPanel.Dock="Bottom" VerticalAlignment="Bottom">
      <ListBoxItem  ... />
      <ListBoxItem ... />
      <ListBoxItem  ... />
    </ListBox >
  </DockPanel>
</ScrollViewer>
@Odonno
Copy link
Contributor

Odonno commented Feb 16, 2017

What is the use case? Why not having a Trigger when the Height is smaller to reduce the number of items in the Pane?

@deltakosh
Copy link
Contributor

You can also update the hamburgermenu template in your application to add the DockPanel

@deltakosh
Copy link
Contributor

I will close this one for now. The platform team is working on a Hamburger Menu replacement. I do not want to accept more PR on our version as it will be deprecated soon in favor of the platform one (https://developer.microsoft.com/en-us/windows/platform/features/navigationview/?q=hamburger)

@amkuchta
Copy link
Contributor Author

@deltakosh heard - thanks for the update! My use case is simply that my window has the ability to be shrunk to a point (vertically) where the number of items exceeds the available space. I don't understand why Options items are given priority over Standard items - to me, it is counter intuitive to hide anything on the window as it responds to size changes unless that is the intended effect. It also makes more sense to me to let users know immediately that scrolling is available, hence the suggestion to shift the scrollbar to the left.

@deltakosh
Copy link
Contributor

Completely agree. options items list is declared after main list so it is rendered on top of it.
we should have added the two list view inside a grid with two rows

@amkuchta
Copy link
Contributor Author

Concur - is there any way to push this up to the platform team as a suggestion to have it implemented there?

@deltakosh
Copy link
Contributor

I will for sure

@amkuchta
Copy link
Contributor Author

Thanks!

@Odonno
Copy link
Contributor

Odonno commented Feb 16, 2017

@amkuchta @deltakosh Menu Items should be prioritized over Options Items. I don't know why it was not implemented this way. I think there is an easy fix for that like @deltakosh said.

@amkuchta
Copy link
Contributor Author

@Odonno personally, I think that having either one prioritized over the other is a mistake - I personally separated mine because the logical division just made sense, not because one was more important than the other. As for implementation to correct, either @deltakosh or mine is fine - I just know that mine works (I tested before I suggested 😆)

@deltakosh
Copy link
Contributor

We can still merge your fix if it is simple. I mean: the hamburger menu will be deprecated but in the meantime nothing prevents us to fix issues for the one we have

@amkuchta
Copy link
Contributor Author

Oh, I meant implementation on the next iteration @deltakosh. If you'd like to implement the change here, I am all for it, but I understand the desire to wait for the next version. Any ideas on when that will be implemented?

Also, @punker76, I thought I would bring you into this, just so you are aware for MahApps.Metro

@deltakosh
Copy link
Contributor

The next version will be done by platform team. I cannot share the ETA yet.
So please go ahead and submit a fix :)

@amkuchta
Copy link
Contributor Author

@deltakosh @Odonno corrected via #960, the pull request is awaiting approval now. Thanks for the feedback on the suggestion!

@nmetulev
Copy link
Contributor

FYI, we are reverting this back to the earlier behavior in order to match the behavior in the new NavigationView. See #1229

@ghost ghost locked as resolved and limited conversation to collaborators Nov 26, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

4 participants