ContextMenuPage.xaml 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. <UserControl xmlns="https://github.com/avaloniaui"
  2. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  3. x:Class="ControlCatalog.Pages.ContextMenuPage">
  4. <StackPanel Orientation="Vertical" Spacing="4">
  5. <TextBlock Classes="h1">Context Menu</TextBlock>
  6. <TextBlock Classes="h2">A right click menu that can be applied to any control.</TextBlock>
  7. <StackPanel Orientation="Horizontal"
  8. Margin="0,16,0,0"
  9. HorizontalAlignment="Center"
  10. Spacing="16">
  11. <Border Background="{DynamicResource ThemeAccentBrush}"
  12. Margin="16"
  13. Padding="48,48,48,48">
  14. <Border.ContextMenu>
  15. <ContextMenu>
  16. <MenuItem Header="Standard _Menu Item"/>
  17. <Separator/>
  18. <MenuItem Header="Menu with _Submenu">
  19. <MenuItem Header="Submenu _1"/>
  20. <MenuItem Header="Submenu _2"/>
  21. </MenuItem>
  22. <MenuItem Header="Menu Item with _Icon">
  23. <MenuItem.Icon>
  24. <Image Source="/Assets/github_icon.png"/>
  25. </MenuItem.Icon>
  26. </MenuItem>
  27. <MenuItem Header="Menu Item with _Checkbox">
  28. <MenuItem.Icon>
  29. <CheckBox BorderThickness="0" IsHitTestVisible="False" IsChecked="True"/>
  30. </MenuItem.Icon>
  31. </MenuItem>
  32. </ContextMenu>
  33. </Border.ContextMenu>
  34. <TextBlock Text="Defined in XAML"/>
  35. </Border>
  36. <Border Background="{DynamicResource ThemeAccentBrush}"
  37. Margin="16"
  38. Padding="48,48,48,48">
  39. <Border.ContextMenu>
  40. <ContextMenu Items="{Binding MenuItems}">
  41. <ContextMenu.Styles>
  42. <Style Selector="MenuItem">
  43. <Setter Property="Header" Value="{Binding Header}"/>
  44. <Setter Property="Items" Value="{Binding Items}"/>
  45. <Setter Property="Command" Value="{Binding Command}"/>
  46. <Setter Property="CommandParameter" Value="{Binding CommandParameter}"/>
  47. </Style>
  48. </ContextMenu.Styles>
  49. </ContextMenu>
  50. </Border.ContextMenu>
  51. <TextBlock Text="Dynamically Generated"/>
  52. </Border>
  53. </StackPanel>
  54. </StackPanel>
  55. </UserControl>