Nelze vybrat více než 25 témat Téma musí začínat písmenem nebo číslem, může obsahovat pomlčky („-“) a může být dlouhé až 35 znaků.

97 řádky
4.9 KiB

  1. <Window
  2. x:Class="ModbusDemo.MainWindow"
  3. xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  4. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  5. xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
  6. xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
  7. xmlns:local="clr-namespace:ModbusDemo"
  8. xmlns:md="http://materialdesigninxaml.net/winfx/xaml/themes"
  9. xmlns:i="http://schemas.microsoft.com/xaml/behaviors"
  10. xmlns:prism="http://prismlibrary.com/"
  11. xmlns:viewmodel="clr-namespace:ModbusDemo.VIewModel"
  12. Title="MainWindow"
  13. Width="900"
  14. Height="600"
  15. d:DataContext="{d:DesignInstance Type=viewmodel:MainWindowViewModel,
  16. IsDesignTimeCreatable=True}"
  17. WindowStartupLocation="CenterScreen"
  18. mc:Ignorable="d">
  19. <WindowChrome.WindowChrome>
  20. <WindowChrome GlassFrameThickness="-1">
  21. </WindowChrome>
  22. </WindowChrome.WindowChrome>
  23. <md:DialogHost DialogTheme="Inherit" Identifier="RootDialog">
  24. <md:DrawerHost x:Name="drawerHost" IsLeftDrawerOpen="{Binding ElementName=MenuToggleButton, Path=IsChecked}">
  25. <!-- 菜单 -->
  26. <md:DrawerHost.LeftDrawerContent>
  27. <DockPanel MinWidth="220">
  28. <StackPanel Margin="0,20" DockPanel.Dock="Top">
  29. </StackPanel>
  30. <!-- 菜单列表 -->
  31. <ListBox x:Name="lbMenu" ItemsSource="{Binding LeftMenusList}" ItemContainerStyle="{StaticResource LeftMenuStyle}" SelectionChanged="lbMenu_SelectionChanged">
  32. <i:Interaction.Triggers>
  33. <i:EventTrigger EventName="SelectionChanged">
  34. <i:InvokeCommandAction Command="{Binding NavigationCmm}" CommandParameter="{Binding SelectedItem, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType=ListBox}}">
  35. </i:InvokeCommandAction>
  36. </i:EventTrigger>
  37. </i:Interaction.Triggers>
  38. <ListBox.ItemTemplate>
  39. <DataTemplate>
  40. <StackPanel Orientation="Horizontal" Background="Transparent">
  41. <md:PackIcon
  42. Margin="15,0"
  43. HorizontalAlignment="Center"
  44. VerticalAlignment="Center"
  45. Kind="{Binding Icon}"
  46. FontSize="20">
  47. </md:PackIcon>
  48. <TextBlock HorizontalAlignment="Center" VerticalAlignment="Center" Text="{Binding MenuName}" FontSize="20">
  49. </TextBlock>
  50. </StackPanel>
  51. </DataTemplate>
  52. </ListBox.ItemTemplate>
  53. </ListBox>
  54. </DockPanel>
  55. </md:DrawerHost.LeftDrawerContent>
  56. <!-- 头部 -->
  57. <DockPanel>
  58. <md:ColorZone
  59. Padding="16"
  60. md:ElevationAssist.Elevation="Dp4"
  61. MouseDoubleClick="ColorZone_MouseDoubleClick"
  62. DockPanel.Dock="Top"
  63. Mode="PrimaryMid">
  64. <DockPanel LastChildFill="True">
  65. <StackPanel DockPanel.Dock="Right" Orientation="Horizontal">
  66. <Button x:Name="btnMin" Content="—" Style="{StaticResource MaterialDesignFlatMidBgButton}" Click="btnMin_Click" />
  67. <Button x:Name="btnMax" Content="☐" Style="{StaticResource MaterialDesignFlatMidBgButton}" Click="btnMax_Click" />
  68. <Button x:Name="btnClose" Content="✕" Style="{StaticResource MaterialDesignFlatMidBgButton}" Click="btnClose_Click" />
  69. </StackPanel>
  70. <StackPanel Orientation="Horizontal">
  71. <ToggleButton x:Name="MenuToggleButton" AutomationProperties.Name="HamburgerToggleButton" IsChecked="False" Style="{StaticResource MaterialDesignHamburgerToggleButton}" />
  72. <TextBlock
  73. Margin="15,0"
  74. HorizontalAlignment="Center"
  75. VerticalAlignment="Center"
  76. AutomationProperties.Name="Mat15.0erial Design In XAML Toolkit"
  77. FontSize="22"
  78. Text="ModBus" />
  79. </StackPanel>
  80. </DockPanel>
  81. </md:ColorZone>
  82. <!-- 区域 -->
  83. <ContentControl prism:RegionManager.RegionName="ModbusRegion">
  84. </ContentControl>
  85. </DockPanel>
  86. </md:DrawerHost>
  87. </md:DialogHost>
  88. </Window>