1
0
mirror of https://github.com/proxysu/ProxySU.git synced 2024-11-21 20:56:08 +03:00
This commit is contained in:
next-autumn 2021-04-26 10:24:36 +08:00
parent 83962fe0f0
commit 7ea78170d1
11 changed files with 326 additions and 538 deletions

View File

@ -191,17 +191,8 @@
<Compile Include="Views\RecordEditor\ServerInfoControl.xaml.cs">
<DependentUpon>ServerInfoControl.xaml</DependentUpon>
</Compile>
<Compile Include="Views\RecordEditor\ShadowSocksEditorControl.xaml.cs">
<DependentUpon>ShadowSocksEditorControl.xaml</DependentUpon>
</Compile>
<Compile Include="Views\RecordEditor\TrojanEditorControl.xaml.cs">
<DependentUpon>TrojanEditorControl.xaml</DependentUpon>
</Compile>
<Compile Include="Views\RecordEditor\VlessEditorControl.xaml.cs">
<DependentUpon>VlessEditorControl.xaml</DependentUpon>
</Compile>
<Compile Include="Views\RecordEditor\VmessEditorControl.xaml.cs">
<DependentUpon>VmessEditorControl.xaml</DependentUpon>
<Compile Include="Views\RecordEditor\XrayEditorControl.xaml.cs">
<DependentUpon>XrayEditorControl.xaml</DependentUpon>
</Compile>
<Compile Include="Views\TerminalWindow.xaml.cs">
<DependentUpon>TerminalWindow.xaml</DependentUpon>
@ -415,19 +406,7 @@
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="Views\RecordEditor\ShadowSocksEditorControl.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="Views\RecordEditor\TrojanEditorControl.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="Views\RecordEditor\VlessEditorControl.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="Views\RecordEditor\VmessEditorControl.xaml">
<Page Include="Views\RecordEditor\XrayEditorControl.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>

View File

@ -8,7 +8,7 @@
xmlns:local="clr-namespace:ProxySU_Core.Views.RecordEditor"
xmlns:converters="clr-namespace:ProxySU_Core.Converters"
mc:Ignorable="d"
Title="编辑主机信息" Height="600" Width="1000">
Title="编辑主机信息" Height="600" Width="1100">
<Window.Resources>
<converters:VisibleConverter x:Key="VisibleConverter" />
@ -34,32 +34,40 @@
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="*" />
<RowDefinition Height="40" />
<RowDefinition Height="auto" />
</Grid.RowDefinitions>
<TabControl BorderThickness="0,1,0,0" BorderBrush="#DDD" Padding="10">
<TabItem metro:HeaderedControlHelper.HeaderFontSize="20" Padding="10,5,10,5" Header="VLESS">
<local:VlessEditorControl />
<TabControl Grid.Row="0" BorderThickness="0,1,0,0" BorderBrush="#DDD" Padding="10">
<TabItem metro:HeaderedControlHelper.HeaderFontSize="20" Header="xray-vless">
<ScrollViewer Name="scroll"
BorderBrush="#ddd"
BorderThickness="2"
Width="auto"
Height="450"
HorizontalScrollBarVisibility="Auto"
VerticalScrollBarVisibility="Auto" >
<local:XrayEditorControl />
</ScrollViewer>
</TabItem>
<TabItem metro:HeaderedControlHelper.HeaderFontSize="20" Padding="10,5,10,5" Header="VMESS">
<local:VmessEditorControl />
<TabItem metro:HeaderedControlHelper.HeaderFontSize="20" Padding="10,5,10,5" Header="Trojan-Go">
</TabItem>
<TabItem metro:HeaderedControlHelper.HeaderFontSize="20" Padding="10,5,10,5" Header="Trojan">
<local:TrojanEditorControl />
</TabItem>
<TabItem metro:HeaderedControlHelper.HeaderFontSize="20" Padding="10,5,10,5" Header="ShadowSocks">
<local:ShadowSocksEditorControl />
<TabItem metro:HeaderedControlHelper.HeaderFontSize="20" Padding="10,5,10,5" Header="NaiveProxy">
</TabItem>
</TabControl>
<Button Content="保存"
Grid.Row="1"
Margin="0,0,20,0"
<StackPanel Grid.Row="1" Grid.Column="0" VerticalAlignment="Center">
<Border BorderBrush="#DDD" BorderThickness="0,1,0,0" />
<Button Content="保存"
Margin="15"
HorizontalAlignment="Right"
VerticalAlignment="Bottom"
VerticalAlignment="Center"
Width="120"
Height="32"
Click="Save" />
</StackPanel>
</Grid>
</StackPanel>

View File

@ -1,62 +0,0 @@
<UserControl x:Class="ProxySU_Core.Views.RecordEditor.ShadowSocksEditorControl"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:ProxySU_Core.Views.RecordEditor"
xmlns:converters="clr-namespace:ProxySU_Core.Converters"
mc:Ignorable="d">
<UserControl.Resources>
<converters:VisibleConverter x:Key="VisibleConverter" />
</UserControl.Resources>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="220" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<StackPanel Margin="0,10,0,0" Grid.Column="0">
<CheckBox Content="ShadowSocks&#x0a;SS支持udp。"
FontSize="13"
Style="{StaticResource MahApps.Styles.CheckBox}"
IsChecked="{Binding Path=Settings.CheckedShadowSocks}" />
</StackPanel>
<StackPanel Grid.Column="1">
<!--域名-->
<StackPanel Margin="40,10,0,0"
Orientation="Horizontal">
<Label Content="域名" Width="70" />
<TextBox Text="{Binding Path=Settings.Domain}" Width="260" />
</StackPanel>
<!--ss密码-->
<StackPanel Margin="40,10,0,0"
Orientation="Horizontal"
Visibility="{
Binding Path=Settings.CheckedShadowSocks,
Converter={StaticResource VisibleConverter}
}">
<Label Content="密码" Width="70" />
<TextBox Text="{Binding Path=Settings.ShadowSocksPassword}"
Width="260"/>
</StackPanel>
<!--ss加密方式-->
<StackPanel Margin="40,15,0,0"
Orientation="Horizontal"
Visibility="{
Binding Path=Settings.CheckedShadowSocks,
Converter={StaticResource VisibleConverter}
}">
<Label Content="加密方式" Width="70" />
<ComboBox Width="260"
ItemsSource="{Binding Settings.ShadowSocksMethods}"
SelectedValue="{Binding Settings.ShadowSocksMethod}">
</ComboBox>
</StackPanel>
</StackPanel>
</Grid>
</UserControl>

View File

@ -1,28 +0,0 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
namespace ProxySU_Core.Views.RecordEditor
{
/// <summary>
/// ShadowSocksEditorControl.xaml 的交互逻辑
/// </summary>
public partial class ShadowSocksEditorControl : UserControl
{
public ShadowSocksEditorControl()
{
InitializeComponent();
}
}
}

View File

@ -1,49 +0,0 @@
<UserControl x:Class="ProxySU_Core.Views.RecordEditor.TrojanEditorControl"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:ProxySU_Core.Views.RecordEditor"
xmlns:converters="clr-namespace:ProxySU_Core.Converters"
mc:Ignorable="d">
<UserControl.Resources>
<converters:VisibleConverter x:Key="VisibleConverter" />
</UserControl.Resources>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="220" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<StackPanel Grid.Column="0">
<CheckBox Content="Trojan over TCP with TLS&#x0a;Trojan"
FontSize="13"
Margin="0,10,0,0"
Style="{StaticResource MahApps.Styles.CheckBox}"
IsChecked="{Binding Path=Settings.Checked_Trojan_TCP}" />
</StackPanel>
<StackPanel Grid.Column="1">
<!--域名-->
<StackPanel Margin="40,10,0,0"
Orientation="Horizontal">
<Label Content="域名" Width="70" />
<TextBox Text="{Binding Path=Settings.Domain}" Width="260" />
</StackPanel>
<!--密码-->
<StackPanel Margin="40,15,0,0"
Orientation="Horizontal"
Visibility="{
Binding Path=Settings.Checked_Trojan_TCP,
Converter={StaticResource VisibleConverter}
}">
<Label Content="密码" Width="70" />
<TextBox Text="{Binding Path=Settings.TrojanPassword}"
Width="260" />
</StackPanel>
</StackPanel>
</Grid>
</UserControl>

View File

@ -1,28 +0,0 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
namespace ProxySU_Core.Views.RecordEditor
{
/// <summary>
/// TrojanEditorControl.xaml 的交互逻辑
/// </summary>
public partial class TrojanEditorControl : UserControl
{
public TrojanEditorControl()
{
InitializeComponent();
}
}
}

View File

@ -1,159 +0,0 @@
<UserControl x:Class="ProxySU_Core.Views.RecordEditor.VlessEditorControl"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:ProxySU_Core.Views.RecordEditor"
xmlns:converters="clr-namespace:ProxySU_Core.Converters"
mc:Ignorable="d">
<UserControl.Resources>
<converters:VisibleConverter x:Key="VisibleConverter" />
</UserControl.Resources>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="220"/>
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<StackPanel Grid.Column="0">
<!--XTLS-->
<CheckBox Content="VLESS Over TCP With XTLS&#x0a;性能数倍,首选方式。"
Margin="0,10,0,0"
FontSize="13"
Style="{StaticResource MahApps.Styles.CheckBox}"
IsChecked="{Binding Path=Settings.Checked_VLESS_TCP_XTLS}"/>
<!--TCP-->
<CheckBox Content="VLESS over TCP with TLS&#x0a;仍推荐XTLS"
Margin="0,15,0,0"
FontSize="13"
Style="{StaticResource MahApps.Styles.CheckBox}"
IsChecked="{Binding Path=Settings.Checked_VLESS_TCP}" />
<!--WebSocket-->
<CheckBox Content="VLESS over WS with TLS&#x0a;推荐支持CDN。"
Margin="0,15,0,0"
Style="{StaticResource MahApps.Styles.CheckBox}"
IsChecked="{Binding Path=Settings.Checked_VLESS_WS}" />
<!--mKCP-->
<CheckBox Content="VLESS mKCP&#x0a;游戏推荐,延迟低。"
Margin="0,15,0,0"
Grid.Column="0"
Style="{StaticResource MahApps.Styles.CheckBox}"
IsChecked="{Binding Path=Settings.Checked_VLESS_KCP}" />
<!--gRPC-->
<!--<CheckBox Content="VLESS gRPC&#x0a;基于http2多路复用。"
Margin="0,15,0,0"
Grid.Column="0"
Style="{StaticResource MahApps.Styles.CheckBox}"
IsChecked="{Binding Path=Settings.Checked_VLESS_gRPC}"/>-->
</StackPanel>
<!--************************** 参数 **************************-->
<StackPanel Grid.Column="1">
<!--UUID-->
<StackPanel Margin="40,10,0,0"
Orientation="Horizontal">
<Label Content="UUID" Width="70" />
<TextBox Text="{Binding Path=Settings.UUID}"
Width="260" />
<Button Style="{StaticResource MahApps.Styles.Button.Flat}"
Margin="5,0,0,0"
FontSize="12"
Command="{Binding Path=Settings.RandomUuid}"
Content="随机" />
</StackPanel>
<!--Domain-->
<StackPanel Margin="40,15,0,0"
Orientation="Horizontal">
<Label Content="域名" Width="70" />
<TextBox Text="{Binding Path=Settings.Domain}" Width="260" />
</StackPanel>
<!--Mask Domain-->
<StackPanel Margin="40,15,0,0"
Orientation="Horizontal">
<Label Content="伪装域名" Width="70" />
<TextBox Text="{Binding Path=Settings.MaskDomain}" Width="260" />
</StackPanel>
<!--WebSocket Path-->
<StackPanel Margin="40,15,0,0"
Orientation="Horizontal"
Visibility="{
Binding Path=Settings.Checked_VLESS_WS,
Converter={StaticResource VisibleConverter}
}">
<Label Content="WS路径" Width="70" />
<TextBox Text="{Binding Path=Settings.VLESS_WS_Path}"
Width="260" />
</StackPanel>
<!--seed-->
<StackPanel Margin="40,15,0,0"
Orientation="Horizontal"
Visibility="{
Binding Path=Settings.Checked_VLESS_KCP,
Converter={StaticResource VisibleConverter}
}">
<Label Content="KCP Seed" Width="70" />
<TextBox Text="{Binding Path=Settings.VLESS_KCP_Seed}" Width="260" />
</StackPanel>
<!--kcp type and kcp port-->
<StackPanel Margin="40,15,0,0"
Visibility="{
Binding Path=Settings.Checked_VLESS_KCP,
Converter={StaticResource VisibleConverter}
}"
Orientation="Horizontal">
<StackPanel Orientation="Horizontal">
<Label Content="KCP伪装" Width="70" />
<ComboBox Width="100"
ItemsSource="{Binding Path=Settings.KcpTypes}"
SelectedValue="{Binding Settings.VLESS_KCP_Type,Mode=TwoWay}">
</ComboBox>
</StackPanel>
<StackPanel Margin="10,0,0,0"
Orientation="Horizontal">
<Label Content="KCP端口" Width="70" />
<TextBox Text="{Binding Path=Settings.VLESS_KCP_Port}" Width="100" />
</StackPanel>
</StackPanel>
<!--gRPC Port-->
<StackPanel Margin="40,15,0,0"
Orientation="Horizontal"
Visibility="{
Binding Path=Settings.Checked_VLESS_gRPC,
Converter={StaticResource VisibleConverter}
}">
<Label Content="gRPC端口" Width="70" />
<TextBox Text="{Binding Path=Settings.VLESS_gRPC_Port}" Width="100" />
<Label Content="服务器" Width="70" Margin="10,0,0,0" />
<TextBox Text="{Binding Path=Settings.VLESS_gRPC_ServiceName}" Width="100" />
</StackPanel>
<!--xray prot-->
<StackPanel Margin="40,15,0,0"
Orientation="Horizontal">
<Label Content="Xray端口" Width="70" />
<TextBox Text="{Binding Path=Settings.Port}" Width="100" />
<Label Content="默认端口443不建议修改" Foreground="Red" />
</StackPanel>
</StackPanel>
</Grid>
</UserControl>

View File

@ -1,140 +0,0 @@
<UserControl x:Class="ProxySU_Core.Views.RecordEditor.VmessEditorControl"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:ProxySU_Core.Views.RecordEditor"
xmlns:converters="clr-namespace:ProxySU_Core.Converters"
mc:Ignorable="d">
<UserControl.Resources>
<converters:VisibleConverter x:Key="VisibleConverter" />
</UserControl.Resources>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="220"/>
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<StackPanel Grid.Column="0">
<!--TCP-->
<CheckBox Content="VMESS over TCP with TLS&#x0a;不推荐"
Margin="0,10,0,0"
FontSize="13"
Style="{StaticResource MahApps.Styles.CheckBox}"
IsChecked="{Binding Path=Settings.Checked_VMESS_TCP}" />
<!--WebSocket-->
<CheckBox Content="VMESS over WS with TLS&#x0a;推荐支持CDN。"
Margin="0,15,0,0"
Style="{StaticResource MahApps.Styles.CheckBox}"
IsChecked="{Binding Path=Settings.Checked_VMESS_WS}" />
<!--mKCP-->
<CheckBox Content="VMESS mKCP&#x0a;游戏推荐,延迟低。"
Margin="0,15,0,0"
Style="{StaticResource MahApps.Styles.CheckBox}"
IsChecked="{Binding Path=Settings.Checked_VMESS_KCP}" />
</StackPanel>
<!--************************** 参数 **************************-->
<StackPanel Grid.Column="1">
<!--UUID-->
<StackPanel Margin="40,10,0,0"
Orientation="Horizontal">
<Label Content="UUID" Width="70" />
<TextBox Text="{Binding Path=Settings.UUID}"
Width="260" />
<Button Style="{StaticResource MahApps.Styles.Button.Flat}"
Margin="5,0,0,0"
FontSize="12"
Command="{Binding Path=Settings.RandomUuid}"
Content="随机" />
</StackPanel>
<!--Domain-->
<StackPanel Margin="40,15,0,0"
Orientation="Horizontal">
<Label Content="域名" Width="70" />
<TextBox Text="{Binding Path=Settings.Domain}" Width="260" />
</StackPanel>
<!--Mask Domain-->
<StackPanel Margin="40,15,0,0"
Orientation="Horizontal">
<Label Content="伪装域名" Width="70" />
<TextBox Text="{Binding Path=Settings.MaskDomain}" Width="260" />
</StackPanel>
<!--WebSocket Path-->
<StackPanel Margin="40,15,0,0"
Orientation="Horizontal"
Visibility="{
Binding Path=Settings.Checked_VMESS_WS,
Converter={StaticResource VisibleConverter}
}">
<Label Content="WS路径" Width="70" />
<TextBox Text="{Binding Path=Settings.VMESS_WS_Path}"
VerticalAlignment="Bottom"
Width="260" />
</StackPanel>
<!--seed-->
<StackPanel Margin="40,15,0,0"
Orientation="Horizontal"
Visibility="{
Binding Path=Settings.Checked_VMESS_KCP,
Converter={StaticResource VisibleConverter}
}">
<Label Content="KCP Seed" Width="70" />
<TextBox Text="{Binding Path=Settings.VMESS_KCP_Seed}" Width="260" />
</StackPanel>
<StackPanel Margin="40,15,0,0"
Orientation="Horizontal">
<!--kcp type-->
<StackPanel Margin="0,0,0,0"
Orientation="Horizontal"
Visibility="{
Binding Path=Settings.Checked_VMESS_KCP,
Converter={StaticResource VisibleConverter}
}">
<Label Content="KCP伪装" Width="70" VerticalAlignment="Bottom"/>
<ComboBox Width="100"
VerticalAlignment="Bottom"
ItemsSource="{Binding Path=Settings.KcpTypes}"
SelectedValue="{Binding Settings.VMESS_KCP_Type,Mode=TwoWay}">
</ComboBox>
</StackPanel>
<!--kcp port-->
<StackPanel Margin="10,0,0,0"
Orientation="Horizontal"
Visibility="{
Binding Path=Settings.Checked_VMESS_KCP,
Converter={StaticResource VisibleConverter}
}">
<Label Content="KCP端口" Width="70" />
<TextBox Text="{Binding Path=Settings.VMESS_KCP_Port}" Width="100" />
</StackPanel>
</StackPanel>
<!--xray prot-->
<StackPanel Margin="40,15,0,0"
Orientation="Horizontal">
<Label Content="Xray端口" Width="70" />
<TextBox Text="{Binding Path=Settings.Port}" Width="100" />
<Label Content="默认端口443不建议修改" Foreground="Red" />
</StackPanel>
</StackPanel>
</Grid>
</UserControl>

View File

@ -1,28 +0,0 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
namespace ProxySU_Core.Views.RecordEditor
{
/// <summary>
/// VmessEditorControl.xaml 的交互逻辑
/// </summary>
public partial class VmessEditorControl : UserControl
{
public VmessEditorControl()
{
InitializeComponent();
}
}
}

View File

@ -0,0 +1,295 @@
<UserControl x:Class="ProxySU_Core.Views.RecordEditor.XrayEditorControl"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:ProxySU_Core.Views.RecordEditor"
xmlns:converters="clr-namespace:ProxySU_Core.Converters"
mc:Ignorable="d"
d:DesignHeight="450" d:DesignWidth="800">
<UserControl.Resources>
<converters:VisibleConverter x:Key="VisibleConverter" />
</UserControl.Resources>
<StackPanel Orientation="Horizontal">
<StackPanel Width="220">
<!--XTLS-->
<CheckBox Margin="0,10,0,0"
Style="{StaticResource MahApps.Styles.CheckBox}"
IsChecked="{Binding Path=Settings.Checked_VLESS_TCP_XTLS}">
<Label Content="VLESS Over TCP With XTLS&#x0a;性能数倍,首选方式。" FontSize="13" Foreground="LimeGreen" />
</CheckBox>
<!--TCP-->
<CheckBox Margin="0,15,0,0"
Style="{StaticResource MahApps.Styles.CheckBox}"
IsChecked="{Binding Path=Settings.Checked_VLESS_TCP}">
<Label Content="VLESS over TCP with TLS&#x0a;仍推荐XTLS" FontSize="13" Foreground="LimeGreen" />
</CheckBox>
<!--WebSocket-->
<CheckBox Margin="0,15,0,0"
Style="{StaticResource MahApps.Styles.CheckBox}"
IsChecked="{Binding Path=Settings.Checked_VLESS_WS}">
<Label Content="VLESS over WS with TLS&#x0a;推荐支持CDN。" FontSize="13" Foreground="LimeGreen" />
</CheckBox>
<!--mKCP-->
<CheckBox Margin="0,15,0,0"
Foreground="LimeGreen"
Style="{StaticResource MahApps.Styles.CheckBox}"
IsChecked="{Binding Path=Settings.Checked_VLESS_KCP}">
<Label Content="VLESS mKCP&#x0a;游戏推荐,延迟低。" FontSize="13" Foreground="LimeGreen" />
</CheckBox>
<!--TCP-->
<!--<CheckBox Content="VMESS over TCP with TLS&#x0a;不推荐"
Margin="0,15,0,0"
FontSize="13"
Style="{StaticResource MahApps.Styles.CheckBox}"
IsChecked="{Binding Path=Settings.Checked_VMESS_TCP}" />-->
<!--WebSocket-->
<CheckBox Margin="0,15,0,0"
Style="{StaticResource MahApps.Styles.CheckBox}"
IsChecked="{Binding Path=Settings.Checked_VMESS_WS}">
<Label Content="VMESS over WS with TLS&#x0a;推荐支持CDN。" FontSize="13" Foreground="Blue" />
</CheckBox>
<!--mKCP-->
<CheckBox Margin="0,15,0,0"
Style="{StaticResource MahApps.Styles.CheckBox}"
IsChecked="{Binding Path=Settings.Checked_VMESS_KCP}">
<Label Foreground="Blue" FontSize="13" Content="VMESS mKCP&#x0a;游戏推荐,延迟低。" />
</CheckBox>
<!--ss-->
<CheckBox Margin="0,15,0,0"
Style="{StaticResource MahApps.Styles.CheckBox}"
IsChecked="{Binding Path=Settings.CheckedShadowSocks}">
<Label Content="ShadowSocks&#x0a;SS支持udp。" FontSize="13" Foreground="Fuchsia" />
</CheckBox>
<!--Trojan-->
<CheckBox Margin="0,15,0,0"
Foreground="CadetBlue"
Style="{StaticResource MahApps.Styles.CheckBox}"
IsChecked="{Binding Path=Settings.Checked_Trojan_TCP}">
<Label Content="Trojan over TCP with TLS&#x0a;Trojan" FontSize="13" Foreground="CadetBlue" />
</CheckBox>
<!--gRPC-->
<!--<CheckBox Content="VLESS gRPC&#x0a;基于http2多路复用。"
Margin="0,15,0,0"
Grid.Column="0"
Style="{StaticResource MahApps.Styles.CheckBox}"
IsChecked="{Binding Path=Settings.Checked_VLESS_gRPC}"/>-->
</StackPanel>
<!--************************** 参数 **************************-->
<StackPanel Width="auto">
<!--Domain-->
<StackPanel Margin="40,15,0,0"
Orientation="Horizontal">
<Label Content="域名" Width="120" />
<TextBox Text="{Binding Path=Settings.Domain}" Width="260" />
</StackPanel>
<!--Mask Domain-->
<StackPanel Margin="40,15,0,0"
Orientation="Horizontal">
<Label Content="伪装域名" Width="120" />
<TextBox Text="{Binding Path=Settings.MaskDomain}" Width="260" />
</StackPanel>
<!--UUID-->
<StackPanel Margin="40,10,0,0"
Orientation="Horizontal">
<Label Content="UUID" Width="120" />
<TextBox Text="{Binding Path=Settings.UUID}"
Width="260" />
<Button Style="{StaticResource MahApps.Styles.Button.Flat}"
Margin="5,0,0,0"
FontSize="12"
Command="{Binding Path=Settings.RandomUuid}"
Content="随机" />
</StackPanel>
<!--WebSocket Path-->
<StackPanel Margin="40,15,0,0"
Orientation="Horizontal"
Visibility="{
Binding Path=Settings.Checked_VLESS_WS,
Converter={StaticResource VisibleConverter}
}">
<Label Content="VLESS WS路径" Foreground="LimeGreen" Width="120" />
<TextBox Text="{Binding Path=Settings.VLESS_WS_Path}"
Width="260" />
</StackPanel>
<!--seed-->
<StackPanel Margin="40,15,0,0"
Orientation="Horizontal"
Visibility="{
Binding Path=Settings.Checked_VLESS_KCP,
Converter={StaticResource VisibleConverter}
}">
<Label Content="VLESS KCP Seed" Foreground="LimeGreen" Width="120" />
<TextBox Text="{Binding Path=Settings.VLESS_KCP_Seed}" Width="260" />
</StackPanel>
<!--kcp type-->
<StackPanel Margin="40,15,0,0"
Visibility="{
Binding Path=Settings.Checked_VLESS_KCP,
Converter={StaticResource VisibleConverter}
}" Orientation="Horizontal">
<Label Content="VLESS KCP伪装" Foreground="LimeGreen" Width="120" />
<ComboBox Width="260"
ItemsSource="{Binding Path=Settings.KcpTypes}"
SelectedValue="{Binding Settings.VLESS_KCP_Type,Mode=TwoWay}">
</ComboBox>
</StackPanel>
<!--kcp port-->
<StackPanel Margin="40,15,0,0"
Visibility="{
Binding Path=Settings.Checked_VLESS_KCP,
Converter={StaticResource VisibleConverter}
}"
Orientation="Horizontal">
<Label Content="VLESS KCP端口" Width="120" Foreground="LimeGreen" />
<TextBox Text="{Binding Path=Settings.VLESS_KCP_Port}" Width="260" />
</StackPanel>
<!--gRPC Port-->
<!--<StackPanel Margin="40,15,0,0"
Orientation="Horizontal"
Visibility="{
Binding Path=Settings.Checked_VLESS_gRPC,
Converter={StaticResource VisibleConverter}
}">
<Label Content="gRPC端口" Width="120" Foreground="LimeGreen" />
<TextBox Text="{Binding Path=Settings.VLESS_gRPC_Port}" Width="120" />
<Label Content="服务器" Width="120" Margin="10,0,0,0" Foreground="LimeGreen" />
<TextBox Text="{Binding Path=Settings.VLESS_gRPC_ServiceName}" Width="120" />
</StackPanel>-->
<!--Tcp Path-->
<!--<StackPanel Margin="40,15,0,0"
Orientation="Horizontal"
Visibility="{
Binding Path=Settings.Checked_VMESS_TCP,
Converter={StaticResource VisibleConverter}
}">
<Label Content="VMESS WS路径" Foreground="Blue" Width="120" />
<TextBox Text="{Binding Path=Settings.VMESS_TCP_Path}"
VerticalAlignment="Bottom"
Width="260" />
</StackPanel>-->
<!--WebSocket Path-->
<StackPanel Margin="40,15,0,0"
Orientation="Horizontal"
Visibility="{
Binding Path=Settings.Checked_VMESS_WS,
Converter={StaticResource VisibleConverter}
}">
<Label Content="VMESS WS路径" Foreground="Blue" Width="120" />
<TextBox Text="{Binding Path=Settings.VMESS_WS_Path}"
VerticalAlignment="Bottom"
Width="260" />
</StackPanel>
<!--seed-->
<StackPanel Margin="40,15,0,0"
Orientation="Horizontal"
Visibility="{
Binding Path=Settings.Checked_VMESS_KCP,
Converter={StaticResource VisibleConverter}
}">
<Label Content="VMESS KCP Seed" Foreground="Blue" Width="120" />
<TextBox Text="{Binding Path=Settings.VMESS_KCP_Seed}" Width="260" />
</StackPanel>
<!--kcp type-->
<StackPanel Margin="40,15,0,0"
Orientation="Horizontal"
Visibility="{
Binding Path=Settings.Checked_VMESS_KCP,
Converter={StaticResource VisibleConverter}
}">
<Label Content="VMESS KCP伪装" Foreground="Blue" Width="120" VerticalAlignment="Bottom"/>
<ComboBox Width="260"
VerticalAlignment="Bottom"
ItemsSource="{Binding Path=Settings.KcpTypes}"
SelectedValue="{Binding Settings.VMESS_KCP_Type,Mode=TwoWay}">
</ComboBox>
</StackPanel>
<!--kcp port-->
<StackPanel Margin="40,15,0,0"
Orientation="Horizontal"
Visibility="{
Binding Path=Settings.Checked_VMESS_KCP,
Converter={StaticResource VisibleConverter}
}">
<Label Content="VMESS KCP端口" Foreground="Blue" Width="120" />
<TextBox Text="{Binding Path=Settings.VMESS_KCP_Port}" Width="260" />
</StackPanel>
<!--ss密码-->
<StackPanel Margin="40,15,0,0"
Orientation="Horizontal"
Visibility="{
Binding Path=Settings.CheckedShadowSocks,
Converter={StaticResource VisibleConverter}
}">
<Label Content="SS密码" Foreground="Fuchsia" Width="120" />
<TextBox Text="{Binding Path=Settings.ShadowSocksPassword}"
Width="260"/>
</StackPanel>
<!--ss加密方式-->
<StackPanel Margin="40,15,0,0"
Orientation="Horizontal"
Visibility="{
Binding Path=Settings.CheckedShadowSocks,
Converter={StaticResource VisibleConverter}
}">
<Label Content="SS加密方式" Foreground="Fuchsia" Width="120" />
<ComboBox Width="260"
ItemsSource="{Binding Settings.ShadowSocksMethods}"
SelectedValue="{Binding Settings.ShadowSocksMethod}">
</ComboBox>
</StackPanel>
<!--Trojan密码-->
<StackPanel Margin="40,15,0,0"
Orientation="Horizontal"
Visibility="{
Binding Path=Settings.Checked_Trojan_TCP,
Converter={StaticResource VisibleConverter}
}">
<Label Content="Trojan密码" Foreground="CadetBlue" Width="120" />
<TextBox Text="{Binding Path=Settings.TrojanPassword}"
Width="260" />
</StackPanel>
<!--xray prot-->
<StackPanel Margin="40,15,0,0"
Orientation="Horizontal">
<Label Content="Xray端口" Foreground="Gray" Width="120" />
<TextBox Text="{Binding Path=Settings.Port}" Width="120" />
<Label Content="默认端口443不建议修改" Foreground="Red" />
</StackPanel>
</StackPanel>
</StackPanel>
</UserControl>

View File

@ -16,11 +16,11 @@ using System.Windows.Shapes;
namespace ProxySU_Core.Views.RecordEditor
{
/// <summary>
/// VlessEditorControl.xaml 的交互逻辑
/// XrayEditorControl.xaml 的交互逻辑
/// </summary>
public partial class VlessEditorControl : UserControl
public partial class XrayEditorControl : UserControl
{
public VlessEditorControl()
public XrayEditorControl()
{
InitializeComponent();
}