Untitled
unknown
ada
3 years ago
8.3 kB
2
Indexable
Never
<Controls:MetroWindow x:Class="APV.Window2" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:Controls="http://metro.mahapps.com/winfx/xaml/controls" xmlns:iconPacks="http://metro.mahapps.com/winfx/xaml/iconpacks" xmlns:local="clr-namespace:APV" mc:Ignorable="d" xmlns:materialDesign="http://materialdesigninxaml.net/winfx/xaml/themes" TextElement.Foreground="{DynamicResource MaterialDesignBody}" TextElement.FontWeight="Regular" TextElement.FontSize="13" TextOptions.TextFormattingMode="Ideal" TextOptions.TextRenderingMode="Auto" Background="{DynamicResource MaterialDesignPaper}" FontFamily="{DynamicResource MaterialDesignFont}" Title="Window2" Height="450" Width="800"> <Controls:MetroWindow.Resources> <ResourceDictionary> <!-- This is the template for all menu items. In this sample we use the glyph items. --> <DataTemplate x:Key="HamburgerMenuItem" DataType="{x:Type Controls:HamburgerMenuGlyphItem}"> <DockPanel Height="48" LastChildFill="True"> <Grid x:Name="IconPart" Width="{Binding RelativeSource={RelativeSource AncestorType={x:Type Controls:HamburgerMenu}}, Path=CompactPaneLength}" DockPanel.Dock="Left"> <Image Margin="12" HorizontalAlignment="Center" VerticalAlignment="Center" Source="{Binding Glyph}" /> </Grid> <TextBlock x:Name="TextPart" VerticalAlignment="Center" FontSize="16" Text="{Binding Label}" /> </DockPanel> <DataTemplate.Triggers> <DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType={x:Type Controls:HamburgerMenu}}, Path=PanePlacement}" Value="Right"> <Setter TargetName="IconPart" Property="DockPanel.Dock" Value="Right" /> <Setter TargetName="TextPart" Property="Margin" Value="8 0 0 0" /> </DataTrigger> </DataTemplate.Triggers> </DataTemplate> <!-- This is the template for the option menu item --> <DataTemplate x:Key="HamburgerOptionsMenuItem" DataType="{x:Type Controls:HamburgerMenuIconItem}"> <DockPanel Height="48" LastChildFill="True"> <ContentControl x:Name="IconPart" Width="{Binding RelativeSource={RelativeSource AncestorType={x:Type Controls:HamburgerMenu}}, Path=CompactPaneLength}" Content="{Binding Icon}" DockPanel.Dock="Left" Focusable="False" IsTabStop="False" /> <TextBlock x:Name="TextPart" VerticalAlignment="Center" FontSize="16" Text="{Binding Label}" /> </DockPanel> <DataTemplate.Triggers> <DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType={x:Type Controls:HamburgerMenu}}, Path=PanePlacement}" Value="Right"> <Setter TargetName="IconPart" Property="DockPanel.Dock" Value="Right" /> <Setter TargetName="TextPart" Property="Margin" Value="8 0 0 0" /> </DataTrigger> </DataTemplate.Triggers> </DataTemplate> </ResourceDictionary> </Controls:MetroWindow.Resources> <Controls:HamburgerMenu x:Name="HamburgerMenuControl" DisplayMode="CompactOverlay" HamburgerWidth="48" ItemInvoked="HamburgerMenuControl_OnItemInvoked" ItemTemplate="{StaticResource HamburgerMenuItem}" OptionsItemTemplate="{StaticResource HamburgerOptionsMenuItem}"> <!-- Header --> <Controls:HamburgerMenu.HamburgerMenuHeaderTemplate> <DataTemplate> <TextBlock HorizontalAlignment="Center" VerticalAlignment="Center" FontSize="16" Foreground="White" Text="Pictures" /> </DataTemplate> </Controls:HamburgerMenu.HamburgerMenuHeaderTemplate> <!-- Items --> <Controls:HamburgerMenu.ItemsSource> <Controls:HamburgerMenuItemCollection> <Controls:HamburgerMenuGlyphItem Glyph="/Assets/Photos/BigFourSummerHeat.png" Label="Big four summer heat" /> <Controls:HamburgerMenuGlyphItem Glyph="/Assets/Photos/BisonBadlandsChillin.png" Label="Bison badlands Chillin" /> <Controls:HamburgerMenuGlyphItem Glyph="/Assets/Photos/GiantSlabInOregon.png" Label="Giant slab in Oregon" /> <Controls:HamburgerMenuGlyphItem Glyph="/Assets/Photos/LakeAnnMushroom.png" Label="Lake Ann Mushroom" /> </Controls:HamburgerMenuItemCollection> </Controls:HamburgerMenu.ItemsSource> <!-- Options --> <Controls:HamburgerMenu.OptionsItemsSource> <Controls:HamburgerMenuItemCollection> <Controls:HamburgerMenuIconItem Label="About"> <Controls:HamburgerMenuIconItem.Icon> <iconPacks:PackIconMaterial Width="22" Height="22" HorizontalAlignment="Center" VerticalAlignment="Center" Kind="Help" /> </Controls:HamburgerMenuIconItem.Icon> <Controls:HamburgerMenuIconItem.Tag> <TextBlock HorizontalAlignment="Center" VerticalAlignment="Center" FontSize="28" FontWeight="Bold"> About </TextBlock> </Controls:HamburgerMenuIconItem.Tag> </Controls:HamburgerMenuIconItem> </Controls:HamburgerMenuItemCollection> </Controls:HamburgerMenu.OptionsItemsSource> <!-- Content --> <Controls:HamburgerMenu.ContentTemplate> <DataTemplate> <Grid x:Name="ContentGrid"> <Grid.RowDefinitions> <RowDefinition Height="48" /> <RowDefinition /> </Grid.RowDefinitions> <Border Grid.Row="0" Margin="-1 0 -1 0" Background="#7A7A7A"> <TextBlock x:Name="Header" HorizontalAlignment="Center" VerticalAlignment="Center" FontSize="24" Foreground="White" Text="{Binding Label}" /> </Border> <Controls:TransitioningContentControl Grid.Row="1" Content="{Binding}" RestartTransitionOnContentChange="True" Transition="Default"> <Controls:TransitioningContentControl.Resources> <DataTemplate DataType="{x:Type Controls:HamburgerMenuIconItem}"> <ContentControl Content="{Binding Tag, Mode=OneWay}" Focusable="True" IsTabStop="False" /> </DataTemplate> </Controls:TransitioningContentControl.Resources> </Controls:TransitioningContentControl> </Grid> </DataTemplate> </Controls:HamburgerMenu.ContentTemplate> </Controls:HamburgerMenu> </Controls:MetroWindow>