我对汉堡菜单的显示模式有些困惑。我希望汉堡菜单可以在正常和宽阔的视觉状态下完全关闭。我尝试将VisualStateWideDisplayMode
设置为Inline
,确实是内联的,但是窗格无法自动打开。当我打开窗格并单击导航到另一个页面时,窗格关闭了,但是我希望它可以始终打开。我尝试将IsOpen
设置为true,但我没有效果。
如果我应该写一些触发器或使用其他方式?感谢帮助。
这样的代码:
<Controls:HamburgerMenu x:Name="MyHamburgerMenu"
VisualStateNormalDisplayMode="Overlay"
VisualStateWideDisplayMode="Inline"
IsOpen="True"/>
我检查了模板的源代码。看来是设计。即使您已经在XAML页面上设置了DisplayMode和Isopen值。但是,在汉堡的代码范围内,它总是会根据VisualStateGroup.CurrentState的值更改DisplayMode和Isopen的值。您可以在template10源代码中的" UpdateVisualStates()"方法中看到此行为。
因此,我认为如果您想更改此默认行为,则需要自己重建自定义版本。或者,您可以使用SplitView在此处像James Quick Descirbes一样使您的自定义汉堡控制控制:Windows 10 SplitView - 构建您的第一个汉堡菜单
我相信您已经发现了一个错误。我在这里报告了https://github.com/windows-xaml/template10/issues/1381
感谢您使用模板10