Optimized MainWindow a little

This commit is contained in:
Space Time
2024-01-04 01:59:40 +08:00
parent 5e72ef9667
commit 147a6c4078

View File

@@ -4,7 +4,6 @@
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:conv="clr-namespace:ClashN.Converters"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:ClashN.Views"
xmlns:materialDesign="http://materialdesigninxaml.net/winfx/xaml/themes"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:reactiveui="http://reactiveui.net"
@@ -19,7 +18,7 @@
x:TypeArguments="vms:MainWindowViewModel"
Background="{DynamicResource MaterialDesignPaper}"
FontFamily="{x:Static conv:MaterialDesignFonts.MyFont}"
ShowInTaskbar="True"
ScrollViewer.VerticalScrollBarVisibility="Auto"
TextElement.FontFamily="{x:Static conv:MaterialDesignFonts.MyFont}"
TextElement.Foreground="{DynamicResource MaterialDesignBody}"
TextOptions.TextFormattingMode="Display"
@@ -31,53 +30,52 @@
SnackbarMessageQueue="{Binding ElementName=MainSnackbar, Path=MessageQueue}"
Style="{StaticResource MaterialDesignEmbeddedDialogHost}">
<Grid>
<Grid Grid.Column="0">
<TabControl Padding="2,0" Style="{StaticResource MaterialDesignNavigatilRailTabControl}">
<materialDesign:NavigationRailAssist.FloatingContent>
<StackPanel
<TabControl Padding="2,0" Style="{StaticResource MaterialDesignNavigatilRailTabControl}">
<materialDesign:NavigationRailAssist.FloatingContent>
<StackPanel
Width="auto"
Height="auto"
Margin="4">
<Grid Width="80" Margin="0,8,0,8">
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<materialDesign:PackIcon
<Grid Width="80" Margin="0,8,0,8">
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<materialDesign:PackIcon
Grid.Row="0"
Grid.Column="0"
Kind="ArrowUpThin" />
<TextBlock
<TextBlock
x:Name="txtSpeedUpload"
Grid.Row="0"
Grid.Column="1"
Margin="8,0,0,0"
Padding="0,0,4,0"
Style="{StaticResource ToolbarItem}" />
<materialDesign:PackIcon
<materialDesign:PackIcon
Grid.Row="1"
Grid.Column="0"
Kind="ArrowDownThin" />
<TextBlock
<TextBlock
x:Name="txtSpeedDownload"
Grid.Row="1"
Grid.Column="1"
Margin="8,0,0,0"
Padding="0,0,4,0"
Style="{StaticResource ToolbarItem}" />
</Grid>
<Button
</Grid>
<Button
x:Name="btnReload"
Content="{materialDesign:PackIcon Kind=Reload}"
Style="{StaticResource MaterialDesignFloatingActionMiniButton}"
Style="{StaticResource MaterialDesignFlatLightBgButton}"
ToolTip="{x:Static resx:ResUI.TbReloadCore}" />
</StackPanel>
</materialDesign:NavigationRailAssist.FloatingContent>
<!--<TabItem
</StackPanel>
</materialDesign:NavigationRailAssist.FloatingContent>
<!--<TabItem
x:Name="dashboardTabItem"
Height="auto"
Style="{StaticResource MyMaterialDesignNavigationRailTabItem}">
@@ -97,224 +95,223 @@
</StackPanel>
</TabItem.Header>
</TabItem>-->
<TabItem x:Name="proxiesTabItem" Style="{StaticResource MyMaterialDesignNavigationRailTabItem}">
<TabItem.Header>
<StackPanel Width="auto" Height="auto">
<materialDesign:PackIcon
<TabItem x:Name="proxiesTabItem" Style="{StaticResource MyMaterialDesignNavigationRailTabItem}">
<TabItem.Header>
<StackPanel Width="auto" Height="auto">
<materialDesign:PackIcon
Width="24"
Height="24"
HorizontalAlignment="Center"
Kind="ArrowDecisionOutline" />
<TextBlock
<TextBlock
HorizontalAlignment="Center"
Style="{StaticResource TabItemTitle}"
Text="{x:Static resx:ResUI.TbProxies}" />
</StackPanel>
</TabItem.Header>
</TabItem>
<TabItem x:Name="profilesTabItem" Style="{StaticResource MyMaterialDesignNavigationRailTabItem}">
<TabItem.Header>
<StackPanel Width="auto" Height="auto">
<materialDesign:PackIcon
</StackPanel>
</TabItem.Header>
</TabItem>
<TabItem x:Name="profilesTabItem" Style="{StaticResource MyMaterialDesignNavigationRailTabItem}">
<TabItem.Header>
<StackPanel Width="auto" Height="auto">
<materialDesign:PackIcon
Width="24"
Height="24"
HorizontalAlignment="Center"
Kind="Server" />
<TextBlock
<TextBlock
HorizontalAlignment="Center"
Style="{StaticResource TabItemTitle}"
Text="{x:Static resx:ResUI.TbProfiles}" />
</StackPanel>
</TabItem.Header>
</TabItem>
<TabItem x:Name="logsTabItem" Style="{StaticResource MyMaterialDesignNavigationRailTabItem}">
<TabItem.Header>
<StackPanel Width="auto" Height="auto">
<materialDesign:PackIcon
</StackPanel>
</TabItem.Header>
</TabItem>
<TabItem x:Name="logsTabItem" Style="{StaticResource MyMaterialDesignNavigationRailTabItem}">
<TabItem.Header>
<StackPanel Width="auto" Height="auto">
<materialDesign:PackIcon
Width="24"
Height="24"
HorizontalAlignment="Center"
Kind="MessageTextOutline" />
<TextBlock
<TextBlock
HorizontalAlignment="Center"
Style="{StaticResource TabItemTitle}"
Text="{x:Static resx:ResUI.TbLogs}" />
</StackPanel>
</TabItem.Header>
</TabItem>
<TabItem x:Name="connectionsTabItem" Style="{StaticResource MyMaterialDesignNavigationRailTabItem}">
<TabItem.Header>
<StackPanel Width="auto" Height="auto">
<materialDesign:PackIcon
</StackPanel>
</TabItem.Header>
</TabItem>
<TabItem x:Name="connectionsTabItem" Style="{StaticResource MyMaterialDesignNavigationRailTabItem}">
<TabItem.Header>
<StackPanel Width="auto" Height="auto">
<materialDesign:PackIcon
Width="24"
Height="24"
HorizontalAlignment="Center"
Kind="LanConnect" />
<TextBlock
<TextBlock
HorizontalAlignment="Center"
Style="{StaticResource TabItemTitle}"
Text="{x:Static resx:ResUI.TbConnections}" />
</StackPanel>
</TabItem.Header>
</TabItem>
<TabItem x:Name="settingsTabItem" Style="{StaticResource MyMaterialDesignNavigationRailTabItem}">
<TabItem.Header>
<StackPanel Width="auto" Height="auto">
<materialDesign:PackIcon
</StackPanel>
</TabItem.Header>
</TabItem>
<TabItem x:Name="settingsTabItem" Style="{StaticResource MyMaterialDesignNavigationRailTabItem}">
<TabItem.Header>
<StackPanel Width="auto" Height="auto">
<materialDesign:PackIcon
Width="24"
Height="24"
HorizontalAlignment="Center"
Kind="SettingsOutline" />
<TextBlock
<TextBlock
HorizontalAlignment="Center"
Style="{StaticResource TabItemTitle}"
Text="{x:Static resx:ResUI.TbSettings}" />
</StackPanel>
</TabItem.Header>
</TabItem>
<TabItem x:Name="helpTabItem" Style="{StaticResource MyMaterialDesignNavigationRailTabItem}">
<TabItem.Header>
<StackPanel Width="auto" Height="auto">
<materialDesign:PackIcon
</StackPanel>
</TabItem.Header>
</TabItem>
<TabItem x:Name="helpTabItem" Style="{StaticResource MyMaterialDesignNavigationRailTabItem}">
<TabItem.Header>
<StackPanel Width="auto" Height="auto">
<materialDesign:PackIcon
Width="24"
Height="24"
HorizontalAlignment="Center"
Kind="HelpCircleOutline" />
<TextBlock
<TextBlock
HorizontalAlignment="Center"
Style="{StaticResource TabItemTitle}"
Text="{x:Static resx:ResUI.TbHelp}" />
</StackPanel>
</TabItem.Header>
</TabItem>
<TabItem x:Name="promotionTabItem" Style="{StaticResource MyMaterialDesignNavigationRailTabItem}">
<TabItem.Header>
<StackPanel Width="auto" Height="auto">
<materialDesign:PackIcon
</StackPanel>
</TabItem.Header>
</TabItem>
<TabItem x:Name="promotionTabItem" Style="{StaticResource MyMaterialDesignNavigationRailTabItem}">
<TabItem.Header>
<StackPanel Width="auto" Height="auto">
<materialDesign:PackIcon
Width="24"
Height="24"
HorizontalAlignment="Center"
Kind="VolumeHigh" />
<TextBlock
<TextBlock
HorizontalAlignment="Center"
Style="{StaticResource TabItemTitle}"
Text="{x:Static resx:ResUI.TbPromotion}" />
</StackPanel>
</TabItem.Header>
</TabItem>
</TabControl>
</StackPanel>
</TabItem.Header>
</TabItem>
</TabControl>
<tb:TaskbarIcon
<tb:TaskbarIcon
x:Name="tbNotify"
IconSource="/ClashN.ico"
NoLeftClickDelay="True">
<tb:TaskbarIcon.ContextMenu>
<ContextMenu Style="{StaticResource DefMenu}">
<MenuItem x:Name="menuSystemProxyClear">
<MenuItem.Header>
<StackPanel Orientation="Horizontal">
<materialDesign:PackIcon
<tb:TaskbarIcon.ContextMenu>
<ContextMenu Style="{StaticResource DefMenu}">
<MenuItem x:Name="menuSystemProxyClear">
<MenuItem.Header>
<StackPanel Orientation="Horizontal">
<materialDesign:PackIcon
x:Name="menuSystemProxyClear2"
Margin="0,0,8,0"
Kind="Check" />
<TextBlock Text="{x:Static resx:ResUI.menuSystemProxyClear}" />
</StackPanel>
</MenuItem.Header>
</MenuItem>
<MenuItem x:Name="menuSystemProxySet">
<MenuItem.Header>
<StackPanel Orientation="Horizontal">
<materialDesign:PackIcon
<TextBlock Text="{x:Static resx:ResUI.menuSystemProxyClear}" />
</StackPanel>
</MenuItem.Header>
</MenuItem>
<MenuItem x:Name="menuSystemProxySet">
<MenuItem.Header>
<StackPanel Orientation="Horizontal">
<materialDesign:PackIcon
x:Name="menuSystemProxySet2"
Margin="0,0,8,0"
Kind="Check" />
<TextBlock Text="{x:Static resx:ResUI.menuSystemProxySet}" />
</StackPanel>
</MenuItem.Header>
</MenuItem>
<MenuItem x:Name="menuSystemProxyNothing">
<MenuItem.Header>
<StackPanel Orientation="Horizontal">
<materialDesign:PackIcon
<TextBlock Text="{x:Static resx:ResUI.menuSystemProxySet}" />
</StackPanel>
</MenuItem.Header>
</MenuItem>
<MenuItem x:Name="menuSystemProxyNothing">
<MenuItem.Header>
<StackPanel Orientation="Horizontal">
<materialDesign:PackIcon
x:Name="menuSystemProxyNothing2"
Margin="0,0,8,0"
Kind="Check" />
<TextBlock Text="{x:Static resx:ResUI.menuSystemProxyNothing}" />
</StackPanel>
</MenuItem.Header>
</MenuItem>
<MenuItem x:Name="menuSystemProxyPac">
<MenuItem.Header>
<StackPanel Orientation="Horizontal">
<materialDesign:PackIcon
<TextBlock Text="{x:Static resx:ResUI.menuSystemProxyNothing}" />
</StackPanel>
</MenuItem.Header>
</MenuItem>
<MenuItem x:Name="menuSystemProxyPac">
<MenuItem.Header>
<StackPanel Orientation="Horizontal">
<materialDesign:PackIcon
x:Name="menuSystemProxyPac2"
Margin="0,0,8,0"
Kind="Check" />
<TextBlock Text="{x:Static resx:ResUI.menuSystemProxyPac}" />
</StackPanel>
</MenuItem.Header>
</MenuItem>
<Separator />
<TextBlock Text="{x:Static resx:ResUI.menuSystemProxyPac}" />
</StackPanel>
</MenuItem.Header>
</MenuItem>
<Separator />
<MenuItem x:Name="menuModeRule">
<MenuItem.Header>
<StackPanel Orientation="Horizontal">
<materialDesign:PackIcon
<MenuItem x:Name="menuModeRule">
<MenuItem.Header>
<StackPanel Orientation="Horizontal">
<materialDesign:PackIcon
x:Name="menuModeRule2"
Margin="0,0,8,0"
Kind="Check" />
<TextBlock Text="{x:Static resx:ResUI.menuModeRule}" />
</StackPanel>
</MenuItem.Header>
</MenuItem>
<MenuItem x:Name="menuModeGlobal">
<MenuItem.Header>
<StackPanel Orientation="Horizontal">
<materialDesign:PackIcon
<TextBlock Text="{x:Static resx:ResUI.menuModeRule}" />
</StackPanel>
</MenuItem.Header>
</MenuItem>
<MenuItem x:Name="menuModeGlobal">
<MenuItem.Header>
<StackPanel Orientation="Horizontal">
<materialDesign:PackIcon
x:Name="menuModeGlobal2"
Margin="0,0,8,0"
Kind="Check" />
<TextBlock Text="{x:Static resx:ResUI.menuModeGlobal}" />
</StackPanel>
</MenuItem.Header>
</MenuItem>
<MenuItem x:Name="menuModeDirect">
<MenuItem.Header>
<StackPanel Orientation="Horizontal">
<materialDesign:PackIcon
<TextBlock Text="{x:Static resx:ResUI.menuModeGlobal}" />
</StackPanel>
</MenuItem.Header>
</MenuItem>
<MenuItem x:Name="menuModeDirect">
<MenuItem.Header>
<StackPanel Orientation="Horizontal">
<materialDesign:PackIcon
x:Name="menuModeDirect2"
Margin="0,0,8,0"
Kind="Check" />
<TextBlock Text="{x:Static resx:ResUI.menuModeDirect}" />
</StackPanel>
</MenuItem.Header>
</MenuItem>
<MenuItem x:Name="menuModeNothing">
<MenuItem.Header>
<StackPanel Orientation="Horizontal">
<materialDesign:PackIcon
<TextBlock Text="{x:Static resx:ResUI.menuModeDirect}" />
</StackPanel>
</MenuItem.Header>
</MenuItem>
<MenuItem x:Name="menuModeNothing">
<MenuItem.Header>
<StackPanel Orientation="Horizontal">
<materialDesign:PackIcon
x:Name="menuModeNothing2"
Margin="0,0,8,0"
Kind="Check" />
<TextBlock Text="{x:Static resx:ResUI.menuModeNothing}" />
</StackPanel>
</MenuItem.Header>
</MenuItem>
<TextBlock Text="{x:Static resx:ResUI.menuModeNothing}" />
</StackPanel>
</MenuItem.Header>
</MenuItem>
<Separator />
<MenuItem x:Name="menuAddProfileViaScan" Header="{x:Static resx:ResUI.menuAddProfileViaScan}" />
<MenuItem x:Name="menuSubUpdate" Header="{x:Static resx:ResUI.menuSubUpdate}" />
<MenuItem x:Name="menuSubUpdateViaProxy" Header="{x:Static resx:ResUI.menuSubUpdateViaProxy}" />
<Separator />
<MenuItem
<Separator />
<MenuItem x:Name="menuAddProfileViaScan" Header="{x:Static resx:ResUI.menuAddProfileViaScan}" />
<MenuItem x:Name="menuSubUpdate" Header="{x:Static resx:ResUI.menuSubUpdate}" />
<MenuItem x:Name="menuSubUpdateViaProxy" Header="{x:Static resx:ResUI.menuSubUpdateViaProxy}" />
<Separator />
<MenuItem
x:Name="menuExit"
Click="menuExit_Click"
Header="{x:Static resx:ResUI.menuExit}" />
</ContextMenu>
</tb:TaskbarIcon.ContextMenu>
</tb:TaskbarIcon>
<materialDesign:Snackbar x:Name="MainSnackbar" MessageQueue="{materialDesign:MessageQueue}" />
</Grid>
</ContextMenu>
</tb:TaskbarIcon.ContextMenu>
</tb:TaskbarIcon>
<materialDesign:Snackbar x:Name="MainSnackbar" MessageQueue="{materialDesign:MessageQueue}" />
</Grid>
</materialDesign:DialogHost>
</reactiveui:ReactiveWindow>