目前,我正在使用一个Grid
布局的Buttons
按钮来进行导航。这个布局看起来很丑,但是可以完成工作。
以下是XAML代码块:
<Button x:Name="ShowMainMenu" Grid.Column="0" Margin="5" Content="Main Menu"/>
<Button x:Name="ShowReportsMenu" Grid.Column="2" Margin="5" Content="Reports"/>
<Button x:Name="Reset" Grid.Column="4" Margin="5" Content="Reset"/>
<Button x:Name="TryClose" Grid.Column="6" Margin="5" Content="Close"/>
顺便提一下, 我正在使用 Caliburn.micro,并且只需为按钮命名即可将它们绑定到适当的命令。
现在,我想把它们放到汉堡菜单里。
到目前为止,我尝试过以下方法:
<Controls:HamburgerMenu >
<Controls:HamburgerMenu.ItemTemplate>
<DataTemplate DataType="{x:Type Controls:HamburgerMenuGlyphItem}">
<Grid Height="48">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="48" />
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<TextBlock Margin="12" HorizontalAlignment="Center" VerticalAlignment="Center" Text="{Binding Glyph}" />
<TextBlock Grid.Column="1" VerticalAlignment="Center" FontSize="16" Text="{Binding Label}" />
</Grid>
</DataTemplate>
</Controls:HamburgerMenu.ItemTemplate>
<Controls:HamburgerMenu.ItemsSource>
<Controls:HamburgerMenuItemCollection>
<Controls:HamburgerMenuGlyphItem Glyph="1" Label="Main Menu" cal:Message.Attach="[Event Click] = [Action ShowMainMenu]"/>
</Controls:HamburgerMenuItemCollection>
</Controls:HamburgerMenu.ItemsSource>
</Controls:HamburgerMenu>
但是它不起作用,因为 Controls:HamburgerMenuGlyphItem
不是一个 FrameworkElement
。
顺便说一下,过渡视图的实现方式如下:
那么,我该如何将我的一堆按钮转换成一个 HamburgerMenu
?我也找不到 Caliburn.micro 的 HamburgerMenu
的适当文档。