1
0
mirror of https://github.com/proxysu/ProxySU.git synced 2024-11-25 14:46:08 +03:00
ProxySU/ProxySuper.WPF/Controls/XraySettingsControl.xaml

343 lines
18 KiB
Plaintext
Raw Normal View History

2021-05-15 11:45:36 +03:00
<UserControl x:Class="ProxySuper.WPF.Controls.XraySettingsControl"
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:ProxySuper.WPF.Controls"
xmlns:convert="clr-namespace:ProxySuper.Core.Converters;assembly=ProxySuper.Core"
mc:Ignorable="d">
<UserControl.Resources>
<convert:VisibleConverter x:Key="VisibleConverter" />
</UserControl.Resources>
2021-06-29 11:08:45 +03:00
2022-11-21 10:24:48 +03:00
<StackPanel Orientation="Vertical" Margin="10,0,20,20">
<!--节点类型-->
<GroupBox Padding="10" Header="{DynamicResource EditorProxyType}">
<StackPanel Orientation="Horizontal">
<WrapPanel Orientation="Vertical">
<!--XTLS-->
<CheckBox Width="150"
2021-05-15 11:45:36 +03:00
VerticalContentAlignment="Center"
2021-05-16 04:12:47 +03:00
IsChecked="{Binding Path=Checked_VLESS_TCP_XTLS}">
2022-11-21 10:24:48 +03:00
<Label Content="{DynamicResource VlessXtlsDesc}" FontSize="12" Foreground="LimeGreen" />
</CheckBox>
2021-05-15 11:45:36 +03:00
2022-11-21 10:24:48 +03:00
<!--TCP-->
<CheckBox Width="150"
2021-05-15 11:45:36 +03:00
VerticalContentAlignment="Center"
IsChecked="{Binding Path=Checked_VLESS_TCP}">
2022-11-21 10:24:48 +03:00
<Label Content="{DynamicResource VlessTcpDesc}" FontSize="12" Foreground="LimeGreen" />
</CheckBox>
2021-05-15 11:45:36 +03:00
2022-11-21 10:24:48 +03:00
<!--WebSocket-->
<CheckBox Width="150"
2021-05-15 11:45:36 +03:00
VerticalContentAlignment="Center"
IsChecked="{Binding Path=Checked_VLESS_WS}">
2022-11-21 10:24:48 +03:00
<Label Content="{DynamicResource VlessWsDesc}" FontSize="12" Foreground="LimeGreen" />
</CheckBox>
2021-05-15 11:45:36 +03:00
2022-11-21 10:24:48 +03:00
<!--mKCP-->
<CheckBox Width="150"
2021-05-15 11:45:36 +03:00
VerticalContentAlignment="Center"
Foreground="LimeGreen"
IsChecked="{Binding Path=Checked_VLESS_KCP}">
2022-11-21 10:24:48 +03:00
<Label Content="{DynamicResource VlessKcpDesc}" FontSize="12" Foreground="LimeGreen" />
</CheckBox>
2021-05-15 11:45:36 +03:00
2022-11-21 10:24:48 +03:00
<!--gRPC-->
<CheckBox Width="150"
2021-06-29 12:43:48 +03:00
VerticalContentAlignment="Center"
Foreground="LimeGreen"
IsChecked="{Binding Path=Checked_VLESS_gRPC}">
2022-11-21 10:24:48 +03:00
<Label Content="{DynamicResource VlessRpcDesc}" FontSize="12" Foreground="LimeGreen" />
</CheckBox>
</WrapPanel>
<WrapPanel Orientation="Vertical">
<!--WebSocket-->
<CheckBox Width="150"
2021-05-15 11:45:36 +03:00
VerticalContentAlignment="Center"
IsChecked="{Binding Path=Checked_VMESS_WS}">
2022-11-21 10:24:48 +03:00
<Label Content="{DynamicResource VmessWsDesc}" FontSize="12" Foreground="Blue" />
</CheckBox>
2021-05-15 11:45:36 +03:00
2022-11-21 10:24:48 +03:00
<!--mKCP-->
<CheckBox Width="150"
2021-05-15 11:45:36 +03:00
VerticalContentAlignment="Center"
IsChecked="{Binding Path=Checked_VMESS_KCP}">
2022-11-21 10:24:48 +03:00
<Label Foreground="Blue" FontSize="12" Content="{DynamicResource VmessKcpDesc}" />
</CheckBox>
</WrapPanel>
2021-05-15 11:45:36 +03:00
2022-11-21 10:24:48 +03:00
<WrapPanel Orientation="Vertical">
<!--ss-->
<CheckBox Width="150"
2021-05-15 11:45:36 +03:00
VerticalContentAlignment="Center"
IsChecked="{Binding Path=CheckedShadowSocks}">
2022-11-21 10:24:48 +03:00
<Label Content="{DynamicResource SSDesc}" FontSize="12" Foreground="Fuchsia" />
</CheckBox>
2021-05-15 11:45:36 +03:00
2022-11-21 10:24:48 +03:00
<!--Trojan-->
<CheckBox Width="150"
2021-05-15 11:45:36 +03:00
Foreground="CadetBlue"
VerticalContentAlignment="Center"
IsChecked="{Binding Path=Checked_Trojan_TCP}">
2022-11-21 10:24:48 +03:00
<Label Content="{DynamicResource TrojanDesc}" FontSize="12" Foreground="CadetBlue" />
</CheckBox>
2021-05-15 11:45:36 +03:00
2022-11-21 10:24:48 +03:00
</WrapPanel>
</StackPanel>
</GroupBox>
2021-05-15 11:45:36 +03:00
2022-11-21 10:24:48 +03:00
<!--参数设置-->
<GroupBox Padding="10" Margin="0,10,0,0" Header="{DynamicResource EditorProxyParams}">
<StackPanel>
<!--Domain-->
<StackPanel Margin="0,15,0,0"
2021-05-15 11:45:36 +03:00
Orientation="Horizontal">
2022-11-21 10:24:48 +03:00
<Label Content="{DynamicResource XrayDomain}" Width="120" />
<TextBox Text="{Binding Path=Domain}" Width="260" />
</StackPanel>
<!--UUID-->
<StackPanel Margin="0,10,0,0" Orientation="Horizontal">
<Label Content="{DynamicResource XrayUUID}" Width="120" />
2021-05-15 11:45:36 +03:00
2022-11-21 10:24:48 +03:00
<TextBox Text="{Binding Path=UUID}"
Width="260" />
2021-05-15 11:45:36 +03:00
2022-11-21 10:24:48 +03:00
<Button Margin="5,0,0,0"
2022-11-21 11:42:47 +03:00
Padding="12,3"
Command="{Binding Path=RandomUuid}"
Content="{DynamicResource Random}" />
2022-11-21 10:24:48 +03:00
</StackPanel>
<!--xray prot-->
<StackPanel Margin="0,15,0,0" Orientation="Horizontal">
2022-11-21 11:42:47 +03:00
<Label Content="{DynamicResource XrayPort}" Width="120" />
2022-11-21 10:24:48 +03:00
<TextBox Text="{Binding Path=Port}" Width="120" />
<Label Content="{DynamicResource XrayPortDefault}" Foreground="Red" />
</StackPanel>
2022-11-21 11:42:47 +03:00
<!--xray utls-->
<StackPanel Margin="0,15,0,0"
Orientation="Horizontal">
<Label Content="uTLS" Width="120" VerticalAlignment="Bottom"/>
<ComboBox Width="260"
VerticalAlignment="Bottom"
ItemsSource="{Binding Path=UTLSList}"
SelectedValue="{Binding UTLS,Mode=TwoWay}">
</ComboBox>
</StackPanel>
2022-11-21 10:24:48 +03:00
<!--more params-->
<Expander ExpandDirection="Down" Margin="0,10,0,0">
<Expander.Header>
<TextBlock Text="更多参数" FontWeight="Bold" />
</Expander.Header>
2022-11-21 11:42:47 +03:00
2022-11-21 10:24:48 +03:00
<Expander.Content>
<StackPanel>
<StackPanel Margin="0,15,0,0" Orientation="Horizontal">
<Label Content="{DynamicResource XrayWithTLS}" Width="120" />
<CheckBox IsChecked="{Binding Path=WithTLS}"
2022-11-20 18:00:16 +03:00
Content="{DynamicResource XrayWithTLSDesc}"
VerticalContentAlignment="Center"
VerticalAlignment="Center" />
2022-11-21 10:24:48 +03:00
</StackPanel>
2022-11-20 18:00:16 +03:00
2022-11-21 10:24:48 +03:00
<!--Mask Domain-->
<StackPanel Margin="0,15,0,0" Orientation="Horizontal">
<Label Content="{DynamicResource XrayMarkDomain}" Width="120" />
<TextBox Text="{Binding Path=MaskDomain}" Width="260" />
</StackPanel>
2022-11-20 18:00:16 +03:00
2022-11-21 10:24:48 +03:00
<!--WebSocket Path-->
<StackPanel Margin="0,15,0,0"
2022-11-21 11:42:47 +03:00
Orientation="Horizontal"
Visibility="{
Binding Path=Checked_VLESS_WS,
Converter={StaticResource VisibleConverter}
}">
2022-11-21 10:24:48 +03:00
<Label Content="{DynamicResource VlessWsPath}" Foreground="LimeGreen" Width="120" />
<TextBox Text="{Binding Path=VLESS_WS_Path}" Width="260" />
</StackPanel>
2022-11-20 18:00:16 +03:00
2022-11-21 10:24:48 +03:00
<!--seed-->
<StackPanel Margin="0,15,0,0"
2022-11-21 11:42:47 +03:00
Orientation="Horizontal"
Visibility="{
Binding Path=Checked_VLESS_KCP,
Converter={StaticResource VisibleConverter}
}">
2022-11-21 10:24:48 +03:00
<Label Content="{DynamicResource VlessKcpSeed}" Foreground="LimeGreen" Width="120" />
<TextBox Text="{Binding Path=VLESS_KCP_Seed}" Width="260" />
</StackPanel>
2022-11-20 18:00:16 +03:00
2022-11-21 10:24:48 +03:00
<!--kcp type-->
<StackPanel Margin="0,15,0,0"
2022-11-21 11:42:47 +03:00
Visibility="{
Binding Path=Checked_VLESS_KCP,
Converter={StaticResource VisibleConverter}
}"
Orientation="Horizontal">
2022-11-21 10:24:48 +03:00
<Label Content="{DynamicResource VlessKcpType}" Foreground="LimeGreen" Width="120" />
<ComboBox Width="260"
2022-11-20 18:00:16 +03:00
ItemsSource="{Binding Path=KcpTypes}"
SelectedValue="{Binding VLESS_KCP_Type,Mode=TwoWay}">
2022-11-21 10:24:48 +03:00
</ComboBox>
</StackPanel>
2022-11-20 18:00:16 +03:00
2022-11-21 10:24:48 +03:00
<!--kcp port-->
<StackPanel Margin="0,15,0,0"
2022-11-21 11:42:47 +03:00
Visibility="{
Binding Path=Checked_VLESS_KCP,
Converter={StaticResource VisibleConverter}
}"
Orientation="Horizontal">
2022-11-21 10:24:48 +03:00
<Label Content="{DynamicResource VlessKcpPort}" Width="120" Foreground="LimeGreen" />
<TextBox Text="{Binding Path=VLESS_KCP_Port}" Width="260" />
</StackPanel>
2022-11-20 18:00:16 +03:00
2022-11-21 10:24:48 +03:00
<!--gRPC Port-->
<StackPanel Margin="0,15,0,0"
2022-11-21 11:42:47 +03:00
Orientation="Horizontal"
Visibility="{
Binding Path=Checked_VLESS_gRPC,
Converter={StaticResource VisibleConverter}
}">
2022-11-21 10:24:48 +03:00
<Label Content="{DynamicResource VlessRPCPort}" Width="120" Foreground="LimeGreen" />
<TextBox Text="{Binding Path=VLESS_gRPC_Port}" Width="260" />
</StackPanel>
2022-11-20 18:00:16 +03:00
2022-11-21 10:24:48 +03:00
<StackPanel Margin="0,15,0,0"
2022-11-21 11:42:47 +03:00
Orientation="Horizontal"
Visibility="{
Binding Path=Checked_VLESS_gRPC,
Converter={StaticResource VisibleConverter}
}">
2022-11-21 10:24:48 +03:00
<Label Content="{DynamicResource VlessRPCName}" Width="120" Foreground="LimeGreen" />
<TextBox Text="{Binding Path=VLESS_gRPC_ServiceName}" Width="260" />
</StackPanel>
2022-11-20 18:00:16 +03:00
2022-11-21 10:24:48 +03:00
<!--WebSocket Path-->
<StackPanel Margin="0,15,0,0"
2022-11-21 11:42:47 +03:00
Orientation="Horizontal"
Visibility="{
Binding Path=Checked_VMESS_WS,
Converter={StaticResource VisibleConverter}
}">
2022-11-21 10:24:48 +03:00
<Label Content="{DynamicResource VmessWsPath}" Foreground="Blue" Width="120" />
<TextBox Text="{Binding Path=VMESS_WS_Path}"
2022-11-21 11:42:47 +03:00
VerticalAlignment="Bottom"
Width="260" />
2022-11-21 10:24:48 +03:00
</StackPanel>
2022-11-20 18:00:16 +03:00
2022-11-21 10:24:48 +03:00
<!--seed-->
<StackPanel Margin="0,15,0,0"
2022-11-21 11:42:47 +03:00
Orientation="Horizontal"
Visibility="{
Binding Path=Checked_VMESS_KCP,
Converter={StaticResource VisibleConverter}
}">
2022-11-21 10:24:48 +03:00
<Label Content="{DynamicResource VmessKcpSeed}" Foreground="Blue" Width="120" />
<TextBox Text="{Binding Path=VMESS_KCP_Seed}" Width="260" />
</StackPanel>
2022-11-20 18:00:16 +03:00
2022-11-21 10:24:48 +03:00
<!--kcp type-->
<StackPanel Margin="0,15,0,0"
2022-11-21 11:42:47 +03:00
Orientation="Horizontal"
Visibility="{
Binding Path=Checked_VMESS_KCP,
Converter={StaticResource VisibleConverter}
}">
2022-11-21 10:24:48 +03:00
<Label Content="{DynamicResource VmessKcpType}" Foreground="Blue" Width="120" VerticalAlignment="Bottom"/>
<ComboBox Width="260"
2022-11-21 11:42:47 +03:00
VerticalAlignment="Bottom"
ItemsSource="{Binding Path=KcpTypes}"
SelectedValue="{Binding VMESS_KCP_Type,Mode=TwoWay}">
2022-11-21 10:24:48 +03:00
</ComboBox>
</StackPanel>
2022-11-20 18:00:16 +03:00
2022-11-21 10:24:48 +03:00
<!--kcp port-->
<StackPanel Margin="0,15,0,0"
2022-11-21 11:42:47 +03:00
Orientation="Horizontal"
Visibility="{
Binding Path=Checked_VMESS_KCP,
Converter={StaticResource VisibleConverter}
}">
2022-11-21 10:24:48 +03:00
<Label Content="{DynamicResource VmessKcpPort}" Foreground="Blue" Width="120" />
<TextBox Text="{Binding Path=VMESS_KCP_Port}" Width="260" />
</StackPanel>
2022-11-20 18:00:16 +03:00
2022-11-21 10:24:48 +03:00
<!--ss密码-->
<StackPanel Margin="0,15,0,0"
2022-11-21 11:42:47 +03:00
Orientation="Horizontal"
Visibility="{
Binding Path=CheckedShadowSocks,
Converter={StaticResource VisibleConverter}
}">
2022-11-21 10:24:48 +03:00
<Label Content="{DynamicResource SSPassword}" Foreground="Fuchsia" Width="120" />
2022-11-21 11:42:47 +03:00
<TextBox Text="{Binding Path=ShadowSocksPassword}" Width="260"/>
2022-11-21 10:24:48 +03:00
</StackPanel>
2022-11-20 18:00:16 +03:00
2022-11-21 10:24:48 +03:00
<!--ss加密方式-->
<StackPanel Margin="0,15,0,0"
2022-11-21 11:42:47 +03:00
Orientation="Horizontal"
Visibility="{
Binding Path=CheckedShadowSocks,
Converter={StaticResource VisibleConverter}
}">
2022-11-21 10:24:48 +03:00
<Label Content="{DynamicResource SSMethods}" Foreground="Fuchsia" Width="120" />
<ComboBox Width="260"
2022-11-20 18:00:16 +03:00
ItemsSource="{Binding ShadowSocksMethods}"
SelectedValue="{Binding ShadowSocksMethod}">
2022-11-21 10:24:48 +03:00
</ComboBox>
</StackPanel>
2022-11-20 18:00:16 +03:00
2022-11-21 10:24:48 +03:00
<!--ss端口-->
<StackPanel Margin="0,15,0,0"
2022-11-21 11:42:47 +03:00
Orientation="Horizontal"
Visibility="{
Binding Path=CheckedShadowSocks,
Converter={StaticResource VisibleConverter}
}">
2022-11-21 10:24:48 +03:00
<Label Content="{DynamicResource SSPort}" Foreground="Fuchsia" Width="120" />
<TextBox Text="{Binding Path=ShadowSocksPort}" Width="260"/>
</StackPanel>
2022-11-20 18:00:16 +03:00
2022-11-21 10:24:48 +03:00
<!--Trojan密码-->
<StackPanel Margin="0,15,0,0"
2022-11-21 11:42:47 +03:00
Orientation="Horizontal"
Visibility="{
Binding Path=Checked_Trojan_TCP,
Converter={StaticResource VisibleConverter}
}">
2022-11-21 10:24:48 +03:00
<Label Content="{DynamicResource TrojanPassword}" Foreground="CadetBlue" Width="120" />
<TextBox Text="{Binding Path=TrojanPassword}" Width="260" />
</StackPanel>
2022-11-20 18:00:16 +03:00
2022-11-21 10:24:48 +03:00
<!--多用户-->
<StackPanel Margin="0,10,0,0" Orientation="Vertical">
<StackPanel Orientation="Horizontal">
<Label Content="{DynamicResource MultiUser}" Width="120" />
2022-11-20 18:00:16 +03:00
2022-11-21 10:24:48 +03:00
<TextBox Text="{Binding Path=MultiUUID}"
Height="60"
TextWrapping="Wrap"
Width="260" />
</StackPanel>
<StackPanel>
<TextBlock Margin="120,3,0,0" Text="{DynamicResource MultiUserHelp}" />
2022-11-20 18:00:16 +03:00
</StackPanel>
</StackPanel>
</StackPanel>
2022-11-21 10:24:48 +03:00
</Expander.Content>
</Expander>
</StackPanel>
</GroupBox>
2021-05-15 11:45:36 +03:00
</StackPanel>
</UserControl>