This commit is contained in:
rabbitism
2024-02-12 20:47:55 +08:00
parent f9802d222b
commit dc3c61dab5
4 changed files with 80 additions and 49 deletions

View File

@@ -11,46 +11,46 @@
x:CompileBindings="True"
x:DataType="vm:NavMenuDemoViewModel"
mc:Ignorable="d">
<StackPanel>
<TextBlock Text="{ReflectionBinding #menu2.SelectedItem.Header}"></TextBlock>
<u:NavMenu Name="menu2">
<u:NavMenuItem Header="Menu 1">
<u:NavMenuItem.Icon>
<Rectangle
Width="10"
Height="10"
Fill="Red" />
</u:NavMenuItem.Icon>
<u:NavMenuItem Header="Sub Menu 1"></u:NavMenuItem>
<u:NavMenuItem Header="Sub Menu 2"></u:NavMenuItem>
<u:NavMenuItem Header="Sub Menu 3"></u:NavMenuItem>
</u:NavMenuItem>
<u:NavMenuItem Header="Menu 2">
<u:NavMenuItem.Icon>
<Rectangle
Width="20"
Height="10"
Fill="Red" />
</u:NavMenuItem.Icon>
</u:NavMenuItem>
<u:NavMenuItem Header="Menu 3">
<u:NavMenuItem.Icon>
<Rectangle
Width="30"
Height="10"
Fill="Red" />
</u:NavMenuItem.Icon>
</u:NavMenuItem>
</u:NavMenu>
<u:Divider Content="Divider" />
<TextBlock Text="{ReflectionBinding #menu.SelectedItem.Header}" />
<u:NavMenu
Name="menu"
ItemsSource="{Binding MenuItems}"
HeaderBinding="{Binding Header}"
SubMenuBinding="{Binding Children}"
IconBinding="{Binding Header}"/>
</StackPanel>
<ScrollViewer>
<StackPanel>
<TextBlock Text="{ReflectionBinding #menu2.SelectedItem.Header}"></TextBlock>
<u:NavMenu Name="menu2">
<u:NavMenuItem Header="Menu 1">
<u:NavMenuItem.Icon>
<Rectangle
Width="10"
Height="10"
Fill="Red" />
</u:NavMenuItem.Icon>
<u:NavMenuItem Header="Sub Menu 1"></u:NavMenuItem>
<u:NavMenuItem Header="Sub Menu 2"></u:NavMenuItem>
<u:NavMenuItem Header="Sub Menu 3"></u:NavMenuItem>
</u:NavMenuItem>
<u:NavMenuItem Header="Menu 2">
<u:NavMenuItem.Icon>
<Rectangle
Width="20"
Height="10"
Fill="Red" />
</u:NavMenuItem.Icon>
</u:NavMenuItem>
<u:NavMenuItem Header="Menu 3">
<u:NavMenuItem.Icon>
<Rectangle
Width="30"
Height="10"
Fill="Red" />
</u:NavMenuItem.Icon>
</u:NavMenuItem>
</u:NavMenu>
<u:Divider Content="Divider" />
<TextBlock Text="{ReflectionBinding #menu.SelectedItem.Header}" />
<u:NavMenu
Name="menu"
ItemsSource="{Binding MenuItems}"
HeaderBinding="{Binding}"
SubMenuBinding="{Binding Children}"
IconBinding="{Binding Header}"/>
</StackPanel>
</ScrollViewer>
</UserControl>

View File

@@ -13,7 +13,12 @@ public class NavMenuDemoViewModel: ObservableObject
{
new MenuItem { Header = "Introduction" , Children =
{
new MenuItem() { Header = "Getting Started" },
new MenuItem() { Header = "Getting Started", Children =
{
new MenuItem() { Header = "Code of Conduct" },
new MenuItem() { Header = "How to Contribute" },
new MenuItem() { Header = "Development Workflow" },
}},
new MenuItem() { Header = "Design Principles" },
new MenuItem() { Header = "Contributing", Children =
{