Files
DMS/DMS.WPF/Views/MainView.xaml

126 lines
6.0 KiB
Plaintext
Raw Normal View History

2025-07-19 11:11:01 +08:00
<Window x:Class="DMS.WPF.Views.MainView"
2025-07-01 21:34:20 +08:00
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:ui="http://schemas.inkore.net/lib/ui/wpf/modern"
2025-07-26 10:05:43 +08:00
xmlns:local="clr-namespace:DMS.WPF.Views"
2025-07-01 21:34:20 +08:00
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
2025-07-26 10:05:43 +08:00
xmlns:vm="clr-namespace:DMS.WPF.ViewModels"
xmlns:mo="clr-namespace:DMS.Core.Models;assembly=DMS.Core"
2025-07-01 21:34:20 +08:00
xmlns:hc="https://handyorg.github.io/handycontrol"
xmlns:tb="http://hardcodet.net/taskbar"
xmlns:taskbarNotification="http://www.hardcodet.net/taskbar"
2025-07-01 21:34:20 +08:00
Title="设备管理系统"
Width="1080"
Height="800"
WindowStartupLocation="CenterScreen"
WindowState="Maximized"
Loaded="MainView_OnLoaded"
Closing="Window_Closing"
2025-07-01 21:34:20 +08:00
ui:WindowHelper.UseModernWindowStyle="True"
ui:WindowHelper.SystemBackdropType="Mica"
d:DataContext="{d:DesignInstance vm:MainViewModel}"
mc:Ignorable="d">
<Window.Resources>
<ContextMenu x:Key="MyMenuItemContextMenu">
<MenuItem Header="添加" />
<MenuItem Header="编辑" />
<Separator />
<MenuItem Header="删除" />
</ContextMenu>
2025-07-01 21:34:20 +08:00
<DataTemplate x:Key="NavigationViewMenuItem"
DataType="{x:Type mo:MenuBean}">
<ui:NavigationViewItem Content="{Binding Name}"
2025-07-01 21:34:20 +08:00
MenuItemsSource="{Binding Items }">
<ui:NavigationViewItem.Icon>
<ui:FontIcon Glyph="{Binding Icon}" />
</ui:NavigationViewItem.Icon>
</ui:NavigationViewItem>
</DataTemplate>
</Window.Resources>
2025-06-10 20:55:39 +08:00
<Grid>
<taskbarNotification:TaskbarIcon x:Name="MyNotifyIcon"
ToolTipText="设备管理系统"
2025-07-26 12:19:05 +08:00
IconSource="/Assets/AppIcon2.ico"
DoubleClickCommand="{Binding ShowWindowCommand}">
<taskbarNotification:TaskbarIcon.ContextMenu>
<ContextMenu>
<MenuItem Header="显示窗口" Command="{Binding ShowWindowCommand}" />
<MenuItem Header="退出" Command="{Binding ExitApplicationCommand}" />
</ContextMenu>
</taskbarNotification:TaskbarIcon.ContextMenu>
</taskbarNotification:TaskbarIcon>
2025-07-01 21:34:20 +08:00
<ui:NavigationView ExpandedModeThresholdWidth="500"
IsTabStop="False"
PaneDisplayMode="Left"
PaneTitle="设备管理系统"
IsSettingsVisible="False"
AlwaysShowHeader="True"
IsBackButtonVisible="Collapsed"
IsBackEnabled="False"
SelectionFollowsFocus="Disabled"
MenuItemsSource="{Binding Menus}"
MenuItemTemplate="{StaticResource NavigationViewMenuItem}"
SelectionChanged="NavigationView_SelectionChanged">
2025-05-29 08:58:58 +08:00
2025-06-10 20:55:39 +08:00
<ui:NavigationView.AutoSuggestBox>
<ui:AutoSuggestBox AutomationProperties.Name="Search">
<ui:AutoSuggestBox.QueryIcon>
<ui:FontIcon Icon="{x:Static ui:SegoeFluentIcons.Search}" />
</ui:AutoSuggestBox.QueryIcon>
</ui:AutoSuggestBox>
</ui:NavigationView.AutoSuggestBox>
<Grid>
<!-- 数据模版绑定不同的View显示 -->
<ContentControl Content="{Binding CurrentViewModel}">
<ContentControl.Resources>
<!-- 主页 -->
<DataTemplate DataType="{x:Type vm:HomeViewModel}">
<local:HomeView />
</DataTemplate>
<!-- 设备列表页 -->
<DataTemplate DataType="{x:Type vm:DevicesViewModel}">
<local:DevicesView />
</DataTemplate>
<!-- 数据转换页 -->
<DataTemplate DataType="{x:Type vm:DataTransformViewModel}">
<local:DataTransformView />
</DataTemplate>
2025-07-04 23:34:54 +08:00
<!-- Mqtt服务器页 -->
<DataTemplate DataType="{x:Type vm:MqttsViewModel}">
<local:MqttsView />
</DataTemplate>
<!-- 设置页 -->
<DataTemplate DataType="{x:Type vm:SettingViewModel}">
<local:SettingView />
</DataTemplate>
<!-- 设备详情页 -->
<DataTemplate DataType="{x:Type vm:DeviceDetailViewModel}">
<local:DeviceDetailView />
</DataTemplate>
<!-- 设备变量页 -->
<DataTemplate DataType="{x:Type vm:VariableTableViewModel}">
<local:VariableTableView DataContext="{Binding }"/>
</DataTemplate>
<!-- Mqtt服务器详情页 -->
2025-07-26 10:05:43 +08:00
<!-- <DataTemplate DataType="{x:Type vm:MqttServerDetailViewModel}"> -->
<!-- <local:MqttServerDetailView DataContext="{Binding }"/> -->
<!-- </DataTemplate> -->
</ContentControl.Resources>
</ContentControl>
2025-07-01 21:34:20 +08:00
<ScrollViewer VerticalScrollBarVisibility="Hidden"
HorizontalAlignment="Right">
<StackPanel hc:Growl.GrowlParent="True"
VerticalAlignment="Top"
Margin="0,10,10,10" />
</ScrollViewer>
</Grid>
2025-06-10 20:55:39 +08:00
</ui:NavigationView>
</Grid>
</Window>