Proposal: MenuBar improvements to match Windows Community Toolkit
See original GitHub issueProposal: MenuBar improvements for parity with Windows Community Toolkit
Summary
A while back we deprecated the Menu control in the Windows Community Toolkit when MenuBar was added to WinUI. However, during our PR to remove the feature in our 6.0 release it was brought up that the MenuBar control doesn’t have parity with the WinUI one, so we held off on removing it, see discussion in PR.
This proposal is about ensuring we can close the feature gap and remove the Menu control from the Toolkit hopefully later this summer?
Rationale
- Unify developers on a common Menu control for consistency across apps for Users
- Add value from developer input from Toolkit control
- Reduce overhead on the Toolkit code-base
Scope
Capability | Priority |
---|---|
Use Menu like an ItemsControl with ItemsSource and DataTemplating | Must |
Show Alt-key Underlines Option (ties into MenuBarItem not having KeyboardAccelerators) | Must |
Have MenuBarItem support Click/Command patterns for items or top-level menus see #2740 | Must |
Showing Alt-key Tooltips Options (old office style) | Should |
IsOpened Property for Menu and Selected/Opened MenuItems |
Could |
Expose MenuFlyout/Tooltip/etc… Styles #1035 | Could |
Orientation supported see #1528, maybe a different control? | Could |
Important Notes
Was noticing some odd behavior in the Gallery, maybe because the menu’s aren’t at the top-level navigation?
- The menu position when using the keyboard isn’t synced with the menubar.
- Right-clicking on menu opened menu as a ContextMenu which appeared odd, especially as it would sometimes flash open the menu in the normal left-click position.
- For instance, when hitting alt, I did not see the keyboard focus rectangle around the menu, even though it was there (theming issue in Gallery or Insider issue?)
Open Questions
Issue Analytics
- State:
- Created 3 years ago
- Reactions:25
- Comments:8 (3 by maintainers)
Top Results From Across the Web
Menu - Windows Community Toolkit
The Windows Community Toolkit Menu control defines a top level menu for commands, options, properties and much more within your UWP apps.
Read more >Announcing .NET Community Toolkit 8.1 - .NET Blog
This new version includes highly requested new features, bug fixes, and massive performance improvements to the MVVM Toolkit source generators, ...
Read more >January 2023 - .NET Blog
NET MAUI Community Toolkit, a community-created library that is supported by amazing developers around the globe both from the community and Microsoft.
Read more >Windows Community Toolkit Documentation
The Windows Community Toolkit is a collection of helper functions, custom controls, and app services. It simplifies and demonstrates common ...
Read more >SwitchPresenter XAML Control - Windows Community Toolkit
A XAML ContentPresenter which can act like a switch statement for showing different UI based on a condition.
Read more >
Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free
Top Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Thanks @michael-hawker. These are great additions to consider on the menubar. Let me circle around with folks and get back on potential timelines here.
@michael-hawker Looks good! I would say that being an ItemsControl isn’t a requirement so long as it can bind items and children (hierarchical items).