mirror of
https://github.com/proxysu/ProxySU.git
synced 2024-12-01 01:26:06 +03:00
Compare commits
2 Commits
89649d136f
...
db6a399ca9
Author | SHA1 | Date | |
---|---|---|---|
|
db6a399ca9 | ||
|
1110f8291e |
@ -9,6 +9,10 @@ namespace ProxySuper.Core.Models.Projects
|
||||
{
|
||||
public class XraySettings : V2raySettings
|
||||
{
|
||||
public static List<string> UTLSList = new List<string> { "", "chrome", "firefox", "safari", "randomized" };
|
||||
|
||||
public string UTLS { get; set; } = UTLSList[1];
|
||||
|
||||
/// <summary>
|
||||
/// vless xtls shareLink
|
||||
/// </summary>
|
||||
|
@ -87,6 +87,19 @@ namespace ProxySuper.Core.ViewModels
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public List<string> UTLSList { get => XraySettings.UTLSList; }
|
||||
|
||||
public string UTLS
|
||||
{
|
||||
get => Settings.UTLS;
|
||||
set
|
||||
{
|
||||
Settings.UTLS = value;
|
||||
RaisePropertyChanged(nameof(UTLS));
|
||||
}
|
||||
}
|
||||
|
||||
public int VLESS_KCP_Port
|
||||
{
|
||||
get => Settings.VLESS_KCP_Port;
|
||||
|
@ -11,331 +11,332 @@
|
||||
<convert:VisibleConverter x:Key="VisibleConverter" />
|
||||
</UserControl.Resources>
|
||||
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<StackPanel Width="220">
|
||||
<!--XTLS-->
|
||||
<CheckBox Margin="0,10,0,0"
|
||||
<StackPanel Orientation="Vertical" Margin="10,0,20,20">
|
||||
<!--节点类型-->
|
||||
<GroupBox Padding="10" Header="{DynamicResource EditorProxyType}">
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<WrapPanel Orientation="Vertical">
|
||||
<!--XTLS-->
|
||||
<CheckBox Width="150"
|
||||
VerticalContentAlignment="Center"
|
||||
IsChecked="{Binding Path=Checked_VLESS_TCP_XTLS}">
|
||||
<Label Content="{DynamicResource VlessXtlsDesc}" FontSize="13" Foreground="LimeGreen" />
|
||||
</CheckBox>
|
||||
<Label Content="{DynamicResource VlessXtlsDesc}" FontSize="12" Foreground="LimeGreen" />
|
||||
</CheckBox>
|
||||
|
||||
<!--TCP-->
|
||||
<CheckBox Margin="0,15,0,0"
|
||||
<!--TCP-->
|
||||
<CheckBox Width="150"
|
||||
VerticalContentAlignment="Center"
|
||||
IsChecked="{Binding Path=Checked_VLESS_TCP}">
|
||||
<Label Content="{DynamicResource VlessTcpDesc}" FontSize="13" Foreground="LimeGreen" />
|
||||
</CheckBox>
|
||||
<Label Content="{DynamicResource VlessTcpDesc}" FontSize="12" Foreground="LimeGreen" />
|
||||
</CheckBox>
|
||||
|
||||
<!--WebSocket-->
|
||||
<CheckBox Margin="0,15,0,0"
|
||||
<!--WebSocket-->
|
||||
<CheckBox Width="150"
|
||||
VerticalContentAlignment="Center"
|
||||
IsChecked="{Binding Path=Checked_VLESS_WS}">
|
||||
<Label Content="{DynamicResource VlessWsDesc}" FontSize="13" Foreground="LimeGreen" />
|
||||
</CheckBox>
|
||||
<Label Content="{DynamicResource VlessWsDesc}" FontSize="12" Foreground="LimeGreen" />
|
||||
</CheckBox>
|
||||
|
||||
<!--mKCP-->
|
||||
<CheckBox Margin="0,15,0,0"
|
||||
<!--mKCP-->
|
||||
<CheckBox Width="150"
|
||||
VerticalContentAlignment="Center"
|
||||
Foreground="LimeGreen"
|
||||
IsChecked="{Binding Path=Checked_VLESS_KCP}">
|
||||
<Label Content="{DynamicResource VlessKcpDesc}" FontSize="13" Foreground="LimeGreen" />
|
||||
</CheckBox>
|
||||
<Label Content="{DynamicResource VlessKcpDesc}" FontSize="12" Foreground="LimeGreen" />
|
||||
</CheckBox>
|
||||
|
||||
<!--gRPC-->
|
||||
<CheckBox Margin="0,15,0,0"
|
||||
<!--gRPC-->
|
||||
<CheckBox Width="150"
|
||||
VerticalContentAlignment="Center"
|
||||
Foreground="LimeGreen"
|
||||
IsChecked="{Binding Path=Checked_VLESS_gRPC}">
|
||||
<Label Content="{DynamicResource VlessRpcDesc}" FontSize="13" Foreground="LimeGreen" />
|
||||
</CheckBox>
|
||||
<Label Content="{DynamicResource VlessRpcDesc}" FontSize="12" Foreground="LimeGreen" />
|
||||
</CheckBox>
|
||||
</WrapPanel>
|
||||
|
||||
<!--TCP-->
|
||||
<!--<CheckBox Content="VMESS over TCP with TLS
不推荐"
|
||||
Margin="0,15,0,0"
|
||||
FontSize="13"
|
||||
Style="{StaticResource MahApps.Styles.CheckBox}"
|
||||
IsChecked="{Binding Path=Checked_VMESS_TCP}" />-->
|
||||
|
||||
<!--WebSocket-->
|
||||
<CheckBox Margin="0,15,0,0"
|
||||
<WrapPanel Orientation="Vertical">
|
||||
<!--WebSocket-->
|
||||
<CheckBox Width="150"
|
||||
VerticalContentAlignment="Center"
|
||||
IsChecked="{Binding Path=Checked_VMESS_WS}">
|
||||
<Label Content="{DynamicResource VmessWsDesc}" FontSize="13" Foreground="Blue" />
|
||||
</CheckBox>
|
||||
<Label Content="{DynamicResource VmessWsDesc}" FontSize="12" Foreground="Blue" />
|
||||
</CheckBox>
|
||||
|
||||
<!--mKCP-->
|
||||
<CheckBox Margin="0,15,0,0"
|
||||
<!--mKCP-->
|
||||
<CheckBox Width="150"
|
||||
VerticalContentAlignment="Center"
|
||||
IsChecked="{Binding Path=Checked_VMESS_KCP}">
|
||||
<Label Foreground="Blue" FontSize="13" Content="{DynamicResource VmessKcpDesc}" />
|
||||
</CheckBox>
|
||||
<Label Foreground="Blue" FontSize="12" Content="{DynamicResource VmessKcpDesc}" />
|
||||
</CheckBox>
|
||||
</WrapPanel>
|
||||
|
||||
<!--ss-->
|
||||
<CheckBox Margin="0,15,0,0"
|
||||
<WrapPanel Orientation="Vertical">
|
||||
<!--ss-->
|
||||
<CheckBox Width="150"
|
||||
VerticalContentAlignment="Center"
|
||||
IsChecked="{Binding Path=CheckedShadowSocks}">
|
||||
<Label Content="{DynamicResource SSDesc}" FontSize="13" Foreground="Fuchsia" />
|
||||
</CheckBox>
|
||||
<Label Content="{DynamicResource SSDesc}" FontSize="12" Foreground="Fuchsia" />
|
||||
</CheckBox>
|
||||
|
||||
<!--Trojan-->
|
||||
<CheckBox Margin="0,15,0,0"
|
||||
<!--Trojan-->
|
||||
<CheckBox Width="150"
|
||||
Foreground="CadetBlue"
|
||||
VerticalContentAlignment="Center"
|
||||
IsChecked="{Binding Path=Checked_Trojan_TCP}">
|
||||
<Label Content="{DynamicResource TrojanDesc}" FontSize="13" Foreground="CadetBlue" />
|
||||
</CheckBox>
|
||||
<Label Content="{DynamicResource TrojanDesc}" FontSize="12" Foreground="CadetBlue" />
|
||||
</CheckBox>
|
||||
|
||||
</StackPanel>
|
||||
</WrapPanel>
|
||||
</StackPanel>
|
||||
</GroupBox>
|
||||
|
||||
<!--************************** 参数 **************************-->
|
||||
|
||||
<StackPanel>
|
||||
|
||||
<!--Domain-->
|
||||
<StackPanel Margin="30,15,0,0"
|
||||
<!--参数设置-->
|
||||
<GroupBox Padding="10" Margin="0,10,0,0" Header="{DynamicResource EditorProxyParams}">
|
||||
<StackPanel>
|
||||
<!--Domain-->
|
||||
<StackPanel Margin="0,15,0,0"
|
||||
Orientation="Horizontal">
|
||||
<Label Content="{DynamicResource XrayDomain}" Width="120" />
|
||||
<TextBox Text="{Binding Path=Domain}" Width="200" />
|
||||
</StackPanel>
|
||||
|
||||
<!--UUID-->
|
||||
<StackPanel Margin="30,10,0,0" Orientation="Horizontal">
|
||||
<Label Content="{DynamicResource XrayUUID}" Width="120" />
|
||||
<Label Content="{DynamicResource XrayDomain}" Width="120" />
|
||||
<TextBox Text="{Binding Path=Domain}" Width="260" />
|
||||
</StackPanel>
|
||||
|
||||
<TextBox Text="{Binding Path=UUID}"
|
||||
Width="200" />
|
||||
<!--UUID-->
|
||||
<StackPanel Margin="0,10,0,0" Orientation="Horizontal">
|
||||
<Label Content="{DynamicResource XrayUUID}" Width="120" />
|
||||
|
||||
<Button Margin="5,0,0,0"
|
||||
Padding="12,3"
|
||||
Command="{Binding Path=RandomUuid}"
|
||||
Content="{DynamicResource Random}" />
|
||||
</StackPanel>
|
||||
<TextBox Text="{Binding Path=UUID}"
|
||||
Width="260" />
|
||||
|
||||
<!--xray prot-->
|
||||
<StackPanel Margin="30,15,0,0" Orientation="Horizontal">
|
||||
<Label Content="{DynamicResource XrayPort}" Foreground="Gray" Width="120" />
|
||||
<TextBox Text="{Binding Path=Port}" Width="120" />
|
||||
<Label Content="{DynamicResource XrayPortDefault}" Foreground="Red" />
|
||||
</StackPanel>
|
||||
<Button Margin="5,0,0,0"
|
||||
Padding="12,3"
|
||||
Command="{Binding Path=RandomUuid}"
|
||||
Content="{DynamicResource Random}" />
|
||||
</StackPanel>
|
||||
|
||||
<Expander ExpandDirection="Down" Margin="30,10,0,0">
|
||||
<Expander.Header>
|
||||
<TextBlock Text="更多参数" FontWeight="Bold" />
|
||||
</Expander.Header>
|
||||
<Expander.Content>
|
||||
<StackPanel>
|
||||
<StackPanel Margin="0,15,0,0" Orientation="Horizontal">
|
||||
<Label Content="{DynamicResource XrayWithTLS}" Width="120" />
|
||||
<CheckBox IsChecked="{Binding Path=WithTLS}"
|
||||
<!--xray prot-->
|
||||
<StackPanel Margin="0,15,0,0" Orientation="Horizontal">
|
||||
<Label Content="{DynamicResource XrayPort}" Width="120" />
|
||||
<TextBox Text="{Binding Path=Port}" Width="120" />
|
||||
<Label Content="{DynamicResource XrayPortDefault}" Foreground="Red" />
|
||||
</StackPanel>
|
||||
|
||||
<!--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>
|
||||
|
||||
<!--more params-->
|
||||
<Expander ExpandDirection="Down" Margin="0,10,0,0">
|
||||
<Expander.Header>
|
||||
<TextBlock Text="更多参数" FontWeight="Bold" />
|
||||
</Expander.Header>
|
||||
|
||||
<Expander.Content>
|
||||
<StackPanel>
|
||||
<StackPanel Margin="0,15,0,0" Orientation="Horizontal">
|
||||
<Label Content="{DynamicResource XrayWithTLS}" Width="120" />
|
||||
<CheckBox IsChecked="{Binding Path=WithTLS}"
|
||||
Content="{DynamicResource XrayWithTLSDesc}"
|
||||
VerticalContentAlignment="Center"
|
||||
VerticalAlignment="Center" />
|
||||
</StackPanel>
|
||||
</StackPanel>
|
||||
|
||||
<!--Mask Domain-->
|
||||
<StackPanel Margin="0,15,0,0" Orientation="Horizontal">
|
||||
<Label Content="{DynamicResource XrayMarkDomain}" Width="120" />
|
||||
<TextBox Text="{Binding Path=MaskDomain}" Width="200" />
|
||||
</StackPanel>
|
||||
<!--Mask Domain-->
|
||||
<StackPanel Margin="0,15,0,0" Orientation="Horizontal">
|
||||
<Label Content="{DynamicResource XrayMarkDomain}" Width="120" />
|
||||
<TextBox Text="{Binding Path=MaskDomain}" Width="260" />
|
||||
</StackPanel>
|
||||
|
||||
<!--WebSocket Path-->
|
||||
<StackPanel Margin="0,15,0,0"
|
||||
Orientation="Horizontal"
|
||||
Visibility="{
|
||||
Binding Path=Checked_VLESS_WS,
|
||||
Converter={StaticResource VisibleConverter}
|
||||
}">
|
||||
<Label Content="{DynamicResource VlessWsPath}" Foreground="LimeGreen" Width="120" />
|
||||
<TextBox Text="{Binding Path=VLESS_WS_Path}" Width="200" />
|
||||
</StackPanel>
|
||||
<!--WebSocket Path-->
|
||||
<StackPanel Margin="0,15,0,0"
|
||||
Orientation="Horizontal"
|
||||
Visibility="{
|
||||
Binding Path=Checked_VLESS_WS,
|
||||
Converter={StaticResource VisibleConverter}
|
||||
}">
|
||||
<Label Content="{DynamicResource VlessWsPath}" Foreground="LimeGreen" Width="120" />
|
||||
<TextBox Text="{Binding Path=VLESS_WS_Path}" Width="260" />
|
||||
</StackPanel>
|
||||
|
||||
<!--seed-->
|
||||
<StackPanel Margin="0,15,0,0"
|
||||
Orientation="Horizontal"
|
||||
Visibility="{
|
||||
Binding Path=Checked_VLESS_KCP,
|
||||
Converter={StaticResource VisibleConverter}
|
||||
}">
|
||||
<Label Content="{DynamicResource VlessKcpSeed}" Foreground="LimeGreen" Width="120" />
|
||||
<TextBox Text="{Binding Path=VLESS_KCP_Seed}" Width="200" />
|
||||
</StackPanel>
|
||||
<!--seed-->
|
||||
<StackPanel Margin="0,15,0,0"
|
||||
Orientation="Horizontal"
|
||||
Visibility="{
|
||||
Binding Path=Checked_VLESS_KCP,
|
||||
Converter={StaticResource VisibleConverter}
|
||||
}">
|
||||
<Label Content="{DynamicResource VlessKcpSeed}" Foreground="LimeGreen" Width="120" />
|
||||
<TextBox Text="{Binding Path=VLESS_KCP_Seed}" Width="260" />
|
||||
</StackPanel>
|
||||
|
||||
<!--kcp type-->
|
||||
<StackPanel Margin="0,15,0,0"
|
||||
Visibility="{
|
||||
Binding Path=Checked_VLESS_KCP,
|
||||
Converter={StaticResource VisibleConverter}
|
||||
}" Orientation="Horizontal">
|
||||
|
||||
<Label Content="{DynamicResource VlessKcpType}" Foreground="LimeGreen" Width="120" />
|
||||
<ComboBox Width="200"
|
||||
<!--kcp type-->
|
||||
<StackPanel Margin="0,15,0,0"
|
||||
Visibility="{
|
||||
Binding Path=Checked_VLESS_KCP,
|
||||
Converter={StaticResource VisibleConverter}
|
||||
}"
|
||||
Orientation="Horizontal">
|
||||
<Label Content="{DynamicResource VlessKcpType}" Foreground="LimeGreen" Width="120" />
|
||||
<ComboBox Width="260"
|
||||
ItemsSource="{Binding Path=KcpTypes}"
|
||||
SelectedValue="{Binding VLESS_KCP_Type,Mode=TwoWay}">
|
||||
</ComboBox>
|
||||
</StackPanel>
|
||||
</ComboBox>
|
||||
</StackPanel>
|
||||
|
||||
<!--kcp port-->
|
||||
<StackPanel Margin="0,15,0,0"
|
||||
Visibility="{
|
||||
Binding Path=Checked_VLESS_KCP,
|
||||
Converter={StaticResource VisibleConverter}
|
||||
}"
|
||||
Orientation="Horizontal">
|
||||
<Label Content="{DynamicResource VlessKcpPort}" Width="120" Foreground="LimeGreen" />
|
||||
<TextBox Text="{Binding Path=VLESS_KCP_Port}" Width="200" />
|
||||
</StackPanel>
|
||||
<!--kcp port-->
|
||||
<StackPanel Margin="0,15,0,0"
|
||||
Visibility="{
|
||||
Binding Path=Checked_VLESS_KCP,
|
||||
Converter={StaticResource VisibleConverter}
|
||||
}"
|
||||
Orientation="Horizontal">
|
||||
<Label Content="{DynamicResource VlessKcpPort}" Width="120" Foreground="LimeGreen" />
|
||||
<TextBox Text="{Binding Path=VLESS_KCP_Port}" Width="260" />
|
||||
</StackPanel>
|
||||
|
||||
<!--gRPC Port-->
|
||||
<StackPanel Margin="0,15,0,0"
|
||||
Orientation="Horizontal"
|
||||
Visibility="{
|
||||
Binding Path=Checked_VLESS_gRPC,
|
||||
Converter={StaticResource VisibleConverter}
|
||||
}">
|
||||
<Label Content="{DynamicResource VlessRPCPort}" Width="120" Foreground="LimeGreen" />
|
||||
<TextBox Text="{Binding Path=VLESS_gRPC_Port}" Width="200" />
|
||||
</StackPanel>
|
||||
<!--gRPC Port-->
|
||||
<StackPanel Margin="0,15,0,0"
|
||||
Orientation="Horizontal"
|
||||
Visibility="{
|
||||
Binding Path=Checked_VLESS_gRPC,
|
||||
Converter={StaticResource VisibleConverter}
|
||||
}">
|
||||
<Label Content="{DynamicResource VlessRPCPort}" Width="120" Foreground="LimeGreen" />
|
||||
<TextBox Text="{Binding Path=VLESS_gRPC_Port}" Width="260" />
|
||||
</StackPanel>
|
||||
|
||||
<StackPanel Margin="0,15,0,0"
|
||||
Orientation="Horizontal"
|
||||
Visibility="{
|
||||
Binding Path=Checked_VLESS_gRPC,
|
||||
Converter={StaticResource VisibleConverter}
|
||||
}">
|
||||
<Label Content="{DynamicResource VlessRPCName}" Width="120" Foreground="LimeGreen" />
|
||||
<TextBox Text="{Binding Path=VLESS_gRPC_ServiceName}" Width="200" />
|
||||
</StackPanel>
|
||||
<StackPanel Margin="0,15,0,0"
|
||||
Orientation="Horizontal"
|
||||
Visibility="{
|
||||
Binding Path=Checked_VLESS_gRPC,
|
||||
Converter={StaticResource VisibleConverter}
|
||||
}">
|
||||
<Label Content="{DynamicResource VlessRPCName}" Width="120" Foreground="LimeGreen" />
|
||||
<TextBox Text="{Binding Path=VLESS_gRPC_ServiceName}" Width="260" />
|
||||
</StackPanel>
|
||||
|
||||
<!--Tcp Path
|
||||
<StackPanel Margin="30,15,0,0"
|
||||
Orientation="Horizontal"
|
||||
Visibility="{
|
||||
Binding Path=Checked_VMESS_TCP,
|
||||
Converter={StaticResource VisibleConverter}
|
||||
}">
|
||||
<Label Content="VMESS WS路径" Foreground="Blue" Width="120" />
|
||||
<TextBox Text="{Binding Path=VMESS_TCP_Path}"
|
||||
VerticalAlignment="Bottom"
|
||||
Width="200" />
|
||||
</StackPanel>-->
|
||||
<!--WebSocket Path-->
|
||||
<StackPanel Margin="0,15,0,0"
|
||||
Orientation="Horizontal"
|
||||
Visibility="{
|
||||
Binding Path=Checked_VMESS_WS,
|
||||
Converter={StaticResource VisibleConverter}
|
||||
}">
|
||||
<Label Content="{DynamicResource VmessWsPath}" Foreground="Blue" Width="120" />
|
||||
<TextBox Text="{Binding Path=VMESS_WS_Path}"
|
||||
VerticalAlignment="Bottom"
|
||||
Width="260" />
|
||||
</StackPanel>
|
||||
|
||||
<!--WebSocket Path-->
|
||||
<StackPanel Margin="0,15,0,0"
|
||||
Orientation="Horizontal"
|
||||
Visibility="{
|
||||
Binding Path=Checked_VMESS_WS,
|
||||
Converter={StaticResource VisibleConverter}
|
||||
}">
|
||||
<Label Content="{DynamicResource VmessWsPath}" Foreground="Blue" Width="120" />
|
||||
<TextBox Text="{Binding Path=VMESS_WS_Path}"
|
||||
VerticalAlignment="Bottom"
|
||||
Width="200" />
|
||||
</StackPanel>
|
||||
<!--seed-->
|
||||
<StackPanel Margin="0,15,0,0"
|
||||
Orientation="Horizontal"
|
||||
Visibility="{
|
||||
Binding Path=Checked_VMESS_KCP,
|
||||
Converter={StaticResource VisibleConverter}
|
||||
}">
|
||||
<Label Content="{DynamicResource VmessKcpSeed}" Foreground="Blue" Width="120" />
|
||||
<TextBox Text="{Binding Path=VMESS_KCP_Seed}" Width="260" />
|
||||
</StackPanel>
|
||||
|
||||
<!--seed-->
|
||||
<StackPanel Margin="0,15,0,0"
|
||||
Orientation="Horizontal"
|
||||
Visibility="{
|
||||
Binding Path=Checked_VMESS_KCP,
|
||||
Converter={StaticResource VisibleConverter}
|
||||
}">
|
||||
<Label Content="{DynamicResource VmessKcpSeed}" Foreground="Blue" Width="120" />
|
||||
<TextBox Text="{Binding Path=VMESS_KCP_Seed}" Width="200" />
|
||||
</StackPanel>
|
||||
<!--kcp type-->
|
||||
<StackPanel Margin="0,15,0,0"
|
||||
Orientation="Horizontal"
|
||||
Visibility="{
|
||||
Binding Path=Checked_VMESS_KCP,
|
||||
Converter={StaticResource VisibleConverter}
|
||||
}">
|
||||
<Label Content="{DynamicResource VmessKcpType}" Foreground="Blue" Width="120" VerticalAlignment="Bottom"/>
|
||||
<ComboBox Width="260"
|
||||
VerticalAlignment="Bottom"
|
||||
ItemsSource="{Binding Path=KcpTypes}"
|
||||
SelectedValue="{Binding VMESS_KCP_Type,Mode=TwoWay}">
|
||||
</ComboBox>
|
||||
</StackPanel>
|
||||
|
||||
<!--kcp type-->
|
||||
<StackPanel Margin="0,15,0,0"
|
||||
Orientation="Horizontal"
|
||||
Visibility="{
|
||||
Binding Path=Checked_VMESS_KCP,
|
||||
Converter={StaticResource VisibleConverter}
|
||||
}">
|
||||
<Label Content="{DynamicResource VmessKcpType}" Foreground="Blue" Width="120" VerticalAlignment="Bottom"/>
|
||||
<ComboBox Width="200"
|
||||
VerticalAlignment="Bottom"
|
||||
ItemsSource="{Binding Path=KcpTypes}"
|
||||
SelectedValue="{Binding VMESS_KCP_Type,Mode=TwoWay}">
|
||||
</ComboBox>
|
||||
</StackPanel>
|
||||
<!--kcp port-->
|
||||
<StackPanel Margin="0,15,0,0"
|
||||
Orientation="Horizontal"
|
||||
Visibility="{
|
||||
Binding Path=Checked_VMESS_KCP,
|
||||
Converter={StaticResource VisibleConverter}
|
||||
}">
|
||||
<Label Content="{DynamicResource VmessKcpPort}" Foreground="Blue" Width="120" />
|
||||
<TextBox Text="{Binding Path=VMESS_KCP_Port}" Width="260" />
|
||||
</StackPanel>
|
||||
|
||||
<!--kcp port-->
|
||||
<StackPanel Margin="0,15,0,0"
|
||||
Orientation="Horizontal"
|
||||
Visibility="{
|
||||
Binding Path=Checked_VMESS_KCP,
|
||||
Converter={StaticResource VisibleConverter}
|
||||
}">
|
||||
<Label Content="{DynamicResource VmessKcpPort}" Foreground="Blue" Width="120" />
|
||||
<TextBox Text="{Binding Path=VMESS_KCP_Port}" Width="200" />
|
||||
</StackPanel>
|
||||
<!--ss密码-->
|
||||
<StackPanel Margin="0,15,0,0"
|
||||
Orientation="Horizontal"
|
||||
Visibility="{
|
||||
Binding Path=CheckedShadowSocks,
|
||||
Converter={StaticResource VisibleConverter}
|
||||
}">
|
||||
<Label Content="{DynamicResource SSPassword}" Foreground="Fuchsia" Width="120" />
|
||||
<TextBox Text="{Binding Path=ShadowSocksPassword}" Width="260"/>
|
||||
</StackPanel>
|
||||
|
||||
<!--ss密码-->
|
||||
<StackPanel Margin="0,15,0,0"
|
||||
Orientation="Horizontal"
|
||||
Visibility="{
|
||||
Binding Path=CheckedShadowSocks,
|
||||
Converter={StaticResource VisibleConverter}
|
||||
}">
|
||||
<Label Content="{DynamicResource SSPassword}" Foreground="Fuchsia" Width="120" />
|
||||
<TextBox Text="{Binding Path=ShadowSocksPassword}"
|
||||
Width="200"/>
|
||||
</StackPanel>
|
||||
|
||||
<!--ss加密方式-->
|
||||
<StackPanel Margin="0,15,0,0"
|
||||
Orientation="Horizontal"
|
||||
Visibility="{
|
||||
Binding Path=CheckedShadowSocks,
|
||||
Converter={StaticResource VisibleConverter}
|
||||
}">
|
||||
<Label Content="{DynamicResource SSMethods}" Foreground="Fuchsia" Width="120" />
|
||||
<ComboBox Width="200"
|
||||
<!--ss加密方式-->
|
||||
<StackPanel Margin="0,15,0,0"
|
||||
Orientation="Horizontal"
|
||||
Visibility="{
|
||||
Binding Path=CheckedShadowSocks,
|
||||
Converter={StaticResource VisibleConverter}
|
||||
}">
|
||||
<Label Content="{DynamicResource SSMethods}" Foreground="Fuchsia" Width="120" />
|
||||
<ComboBox Width="260"
|
||||
ItemsSource="{Binding ShadowSocksMethods}"
|
||||
SelectedValue="{Binding ShadowSocksMethod}">
|
||||
</ComboBox>
|
||||
</StackPanel>
|
||||
</ComboBox>
|
||||
</StackPanel>
|
||||
|
||||
<!--ss端口-->
|
||||
<StackPanel Margin="0,15,0,0"
|
||||
Orientation="Horizontal"
|
||||
Visibility="{
|
||||
Binding Path=CheckedShadowSocks,
|
||||
Converter={StaticResource VisibleConverter}
|
||||
}">
|
||||
<Label Content="{DynamicResource SSPort}" Foreground="Fuchsia" Width="120" />
|
||||
<TextBox Text="{Binding Path=ShadowSocksPort}" Width="200"/>
|
||||
</StackPanel>
|
||||
<!--ss端口-->
|
||||
<StackPanel Margin="0,15,0,0"
|
||||
Orientation="Horizontal"
|
||||
Visibility="{
|
||||
Binding Path=CheckedShadowSocks,
|
||||
Converter={StaticResource VisibleConverter}
|
||||
}">
|
||||
<Label Content="{DynamicResource SSPort}" Foreground="Fuchsia" Width="120" />
|
||||
<TextBox Text="{Binding Path=ShadowSocksPort}" Width="260"/>
|
||||
</StackPanel>
|
||||
|
||||
<!--Trojan密码-->
|
||||
<StackPanel Margin="0,15,0,0"
|
||||
Orientation="Horizontal"
|
||||
Visibility="{
|
||||
Binding Path=Checked_Trojan_TCP,
|
||||
Converter={StaticResource VisibleConverter}
|
||||
}">
|
||||
<Label Content="{DynamicResource TrojanPassword}" Foreground="CadetBlue" Width="120" />
|
||||
<TextBox Text="{Binding Path=TrojanPassword}" Width="200" />
|
||||
</StackPanel>
|
||||
<!--Trojan密码-->
|
||||
<StackPanel Margin="0,15,0,0"
|
||||
Orientation="Horizontal"
|
||||
Visibility="{
|
||||
Binding Path=Checked_Trojan_TCP,
|
||||
Converter={StaticResource VisibleConverter}
|
||||
}">
|
||||
<Label Content="{DynamicResource TrojanPassword}" Foreground="CadetBlue" Width="120" />
|
||||
<TextBox Text="{Binding Path=TrojanPassword}" Width="260" />
|
||||
</StackPanel>
|
||||
|
||||
<!--多用户-->
|
||||
<StackPanel Margin="0,10,0,0" Orientation="Vertical">
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<Label Content="{DynamicResource MultiUser}" Width="120" />
|
||||
<!--多用户-->
|
||||
<StackPanel Margin="0,10,0,0" Orientation="Vertical">
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<Label Content="{DynamicResource MultiUser}" Width="120" />
|
||||
|
||||
<TextBox Text="{Binding Path=MultiUUID}"
|
||||
Height="60"
|
||||
TextWrapping="Wrap"
|
||||
Width="200" />
|
||||
<TextBox Text="{Binding Path=MultiUUID}"
|
||||
Height="60"
|
||||
TextWrapping="Wrap"
|
||||
Width="260" />
|
||||
</StackPanel>
|
||||
|
||||
<StackPanel>
|
||||
<TextBlock Margin="120,3,0,0" Text="{DynamicResource MultiUserHelp}" />
|
||||
</StackPanel>
|
||||
<StackPanel>
|
||||
<TextBlock Margin="120,3,0,0" Text="{DynamicResource MultiUserHelp}" />
|
||||
</StackPanel>
|
||||
</StackPanel>
|
||||
</StackPanel>
|
||||
</Expander.Content>
|
||||
</Expander>
|
||||
</StackPanel>
|
||||
</Expander.Content>
|
||||
</Expander>
|
||||
</StackPanel>
|
||||
</GroupBox>
|
||||
</StackPanel>
|
||||
|
||||
</UserControl>
|
||||
|
@ -64,18 +64,21 @@
|
||||
<sys:String x:Key="ProxyTypeNone">None</sys:String>
|
||||
<sys:String x:Key="ProxyTypeHttp">Http</sys:String>
|
||||
<sys:String x:Key="ProxyTypeSocks5">Socks5</sys:String>
|
||||
|
||||
|
||||
<!--editor-->
|
||||
<sys:String x:Key="EditorProxyType" xml:space="preserve">Proxy Type</sys:String>
|
||||
<sys:String x:Key="EditorProxyParams" xml:space="preserve">Params</sys:String>
|
||||
|
||||
<!--Xray-->
|
||||
<sys:String x:Key="VlessXtlsDesc" xml:space="preserve">VLESS over TCP With XTLS
</sys:String>
|
||||
<sys:String x:Key="VlessTcpDesc" xml:space="preserve">VLESS over TCP with TLS
</sys:String>
|
||||
<sys:String x:Key="VlessWsDesc" xml:space="preserve">VLESS over WS with TLS
Support CDN</sys:String>
|
||||
<sys:String x:Key="VlessRpcDesc" xml:space="preserve">VLESS gRPC
http2,multiplexing。</sys:String>
|
||||
<sys:String x:Key="VlessKcpDesc" xml:space="preserve">VLESS mKCP
low delay,without Domain</sys:String>
|
||||
<sys:String x:Key="VmessWsDesc" xml:space="preserve">VMESS over WS with TLS
Support CDN</sys:String>
|
||||
<sys:String x:Key="VmessKcpDesc" xml:space="preserve">VMESS mKCP
low delay,without Domian</sys:String>
|
||||
<sys:String x:Key="SSDesc" xml:space="preserve">ShadowSocks
Support UDP,without Domain</sys:String>
|
||||
<sys:String x:Key="TrojanDesc" xml:space="preserve">Trojan over TCP with TLS
Trojan</sys:String>
|
||||
<sys:String x:Key="VlessXtlsDesc" xml:space="preserve">VLESS XTLS</sys:String>
|
||||
<sys:String x:Key="VlessTcpDesc" xml:space="preserve">VLESS TCP</sys:String>
|
||||
<sys:String x:Key="VlessWsDesc" xml:space="preserve">VLESS WS</sys:String>
|
||||
<sys:String x:Key="VlessRpcDesc" xml:space="preserve">VLESS gRPC</sys:String>
|
||||
<sys:String x:Key="VlessKcpDesc" xml:space="preserve">VLESS mKCP</sys:String>
|
||||
<sys:String x:Key="VmessWsDesc" xml:space="preserve">VMESS WS</sys:String>
|
||||
<sys:String x:Key="VmessKcpDesc" xml:space="preserve">VMESS mKCP</sys:String>
|
||||
<sys:String x:Key="SSDesc" xml:space="preserve">ShadowSocks</sys:String>
|
||||
<sys:String x:Key="TrojanDesc" xml:space="preserve">Trojan</sys:String>
|
||||
|
||||
<sys:String x:Key="XrayDomain">Domain/IP</sys:String>
|
||||
<sys:String x:Key="XrayMarkDomain">Redir Url</sys:String>
|
||||
|
@ -64,16 +64,20 @@
|
||||
<sys:String x:Key="ProxyTypeHttp">Http</sys:String>
|
||||
<sys:String x:Key="ProxyTypeSocks5">Socks5</sys:String>
|
||||
|
||||
<!--editor-->
|
||||
<sys:String x:Key="EditorProxyType" xml:space="preserve">節點類型</sys:String>
|
||||
<sys:String x:Key="EditorProxyParams" xml:space="preserve">節點參數</sys:String>
|
||||
|
||||
<!--Xray-->
|
||||
<sys:String x:Key="VlessXtlsDesc" xml:space="preserve">VLESS Over TCP With XTLS
安全隱患,謹慎。</sys:String>
|
||||
<sys:String x:Key="VlessTcpDesc" xml:space="preserve">VLESS over TCP with TLS
</sys:String>
|
||||
<sys:String x:Key="VlessWsDesc" xml:space="preserve">VLESS over WS with TLS
推薦,支持CDN。</sys:String>
|
||||
<sys:String x:Key="VlessRpcDesc" xml:space="preserve">VLESS gRPC
基於http2,多路複用。</sys:String>
|
||||
<sys:String x:Key="VlessKcpDesc" xml:space="preserve">VLESS mKCP
遊戲推薦,延遲低,免域名。</sys:String>
|
||||
<sys:String x:Key="VmessWsDesc" xml:space="preserve">VMESS over WS with TLS
推薦,支持CDN。</sys:String>
|
||||
<sys:String x:Key="VmessKcpDesc" xml:space="preserve">VMESS mKCP
遊戲推薦,延遲低,免域名。</sys:String>
|
||||
<sys:String x:Key="SSDesc" xml:space="preserve">ShadowSocks
SS,支持udp,免域名。</sys:String>
|
||||
<sys:String x:Key="TrojanDesc" xml:space="preserve">Trojan over TCP with TLS
Trojan。</sys:String>
|
||||
<sys:String x:Key="VlessXtlsDesc" xml:space="preserve">VLESS TCP XTLS</sys:String>
|
||||
<sys:String x:Key="VlessTcpDesc" xml:space="preserve">VLESS TCP</sys:String>
|
||||
<sys:String x:Key="VlessWsDesc" xml:space="preserve">VLESS WS</sys:String>
|
||||
<sys:String x:Key="VlessRpcDesc" xml:space="preserve">VLESS gRPC</sys:String>
|
||||
<sys:String x:Key="VlessKcpDesc" xml:space="preserve">VLESS mKCP</sys:String>
|
||||
<sys:String x:Key="VmessWsDesc" xml:space="preserve">VMESS WS</sys:String>
|
||||
<sys:String x:Key="VmessKcpDesc" xml:space="preserve">VMESS mKCP</sys:String>
|
||||
<sys:String x:Key="SSDesc" xml:space="preserve">ShadowSocks</sys:String>
|
||||
<sys:String x:Key="TrojanDesc" xml:space="preserve">Trojan</sys:String>
|
||||
|
||||
|
||||
<sys:String x:Key="XrayDomain">域名/IP</sys:String>
|
||||
|
@ -65,16 +65,20 @@
|
||||
<sys:String x:Key="ProxyTypeHttp">Http</sys:String>
|
||||
<sys:String x:Key="ProxyTypeSocks5">Socks5</sys:String>
|
||||
|
||||
<!--editor-->
|
||||
<sys:String x:Key="EditorProxyType" xml:space="preserve">节点类型</sys:String>
|
||||
<sys:String x:Key="EditorProxyParams" xml:space="preserve">节点参数</sys:String>
|
||||
|
||||
<!--Xray-->
|
||||
<sys:String x:Key="VlessXtlsDesc" xml:space="preserve">VLESS Over TCP With XTLS
安全隐患,谨慎。</sys:String>
|
||||
<sys:String x:Key="VlessTcpDesc" xml:space="preserve">VLESS over TCP with TLS
推荐,主流。</sys:String>
|
||||
<sys:String x:Key="VlessWsDesc" xml:space="preserve">VLESS over WS with TLS
推荐,支持CDN。</sys:String>
|
||||
<sys:String x:Key="VlessRpcDesc" xml:space="preserve">VLESS gRPC
基于http2,多路复用。</sys:String>
|
||||
<sys:String x:Key="VlessKcpDesc" xml:space="preserve">VLESS mKCP
游戏推荐,延迟低,免域名。</sys:String>
|
||||
<sys:String x:Key="VmessWsDesc" xml:space="preserve">VMESS over WS with TLS
推荐,支持CDN。</sys:String>
|
||||
<sys:String x:Key="VmessKcpDesc" xml:space="preserve">VMESS mKCP
游戏推荐,延迟低,免域名。</sys:String>
|
||||
<sys:String x:Key="SSDesc" xml:space="preserve">ShadowSocks
SS,支持udp,免域名。</sys:String>
|
||||
<sys:String x:Key="TrojanDesc" xml:space="preserve">Trojan over TCP with TLS
Trojan。</sys:String>
|
||||
<sys:String x:Key="VlessXtlsDesc" xml:space="preserve">VLESS TCP XTLS</sys:String>
|
||||
<sys:String x:Key="VlessTcpDesc" xml:space="preserve">VLESS TCP</sys:String>
|
||||
<sys:String x:Key="VlessWsDesc" xml:space="preserve">VLESS WS</sys:String>
|
||||
<sys:String x:Key="VlessRpcDesc" xml:space="preserve">VLESS gRPC</sys:String>
|
||||
<sys:String x:Key="VlessKcpDesc" xml:space="preserve">VLESS mKCP</sys:String>
|
||||
<sys:String x:Key="VmessWsDesc" xml:space="preserve">VMESS WS</sys:String>
|
||||
<sys:String x:Key="VmessKcpDesc" xml:space="preserve">VMESS mKCP</sys:String>
|
||||
<sys:String x:Key="SSDesc" xml:space="preserve">ShadowSocks</sys:String>
|
||||
<sys:String x:Key="TrojanDesc" xml:space="preserve">Trojan</sys:String>
|
||||
|
||||
|
||||
<sys:String x:Key="XrayDomain">域名/IP</sys:String>
|
||||
@ -133,5 +137,5 @@
|
||||
<sys:String x:Key="MTProtoDomain">域名/IP</sys:String>
|
||||
<sys:String x:Key="MTProtoPort">端口</sys:String>
|
||||
<sys:String x:Key="MTProtoCleartext">加密前字符</sys:String>
|
||||
<sys:String x:Key="MTProtoSecretText">密钥</sys:String>
|
||||
<sys:String x:Key="MTProtoSecretText">密钥</sys:String>
|
||||
</ResourceDictionary>
|
@ -11,7 +11,7 @@
|
||||
Icon="/Resources/ProxySU.ico"
|
||||
BorderThickness="0,1,0,0"
|
||||
BorderBrush="#EEE"
|
||||
Title="Xray编辑配置" Height="610" Width="1015">
|
||||
Title="Xray编辑配置" Height="640" Width="1015">
|
||||
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
@ -26,41 +26,40 @@
|
||||
|
||||
<StackPanel Grid.Column="1" Background="#EEE"></StackPanel>
|
||||
|
||||
<StackPanel Grid.Column="2">
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="500" />
|
||||
<RowDefinition Height="80" />
|
||||
</Grid.RowDefinitions>
|
||||
<Grid Grid.Column="2">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="*" />
|
||||
<RowDefinition Height="50" />
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<ScrollViewer Name="scroll"
|
||||
Padding="10"
|
||||
Height="500"
|
||||
Grid.Row="0"
|
||||
HorizontalScrollBarVisibility="Auto"
|
||||
VerticalScrollBarVisibility="Auto" >
|
||||
<ctrl:XraySettingsControl />
|
||||
</ScrollViewer>
|
||||
<ScrollViewer Name="scroll"
|
||||
Padding="10"
|
||||
Grid.Row="0"
|
||||
Height="auto"
|
||||
HorizontalScrollBarVisibility="Auto"
|
||||
VerticalScrollBarVisibility="Auto" >
|
||||
<ctrl:XraySettingsControl />
|
||||
</ScrollViewer>
|
||||
|
||||
<Border Grid.Row="1"
|
||||
BorderBrush="#eee"
|
||||
BorderThickness="0,1,0,0">
|
||||
<StackPanel Orientation="Horizontal" HorizontalAlignment="Right">
|
||||
<Button Content="{DynamicResource Save}"
|
||||
Command="{Binding SaveCommand}"
|
||||
HorizontalAlignment="Right"
|
||||
VerticalAlignment="Center"
|
||||
Padding="10,5" />
|
||||
<Border Grid.Row="1"
|
||||
BorderBrush="#eee"
|
||||
BorderThickness="0,1,0,0">
|
||||
<StackPanel Orientation="Horizontal" HorizontalAlignment="Right" Height="50">
|
||||
<Button Content="{DynamicResource Save}"
|
||||
Command="{Binding SaveCommand}"
|
||||
HorizontalAlignment="Right"
|
||||
VerticalAlignment="Center"
|
||||
Padding="10,5" />
|
||||
|
||||
<Button Content="{DynamicResource SaveAndInstall}"
|
||||
Command="{Binding SaveAndInstallCommand}"
|
||||
HorizontalAlignment="Right"
|
||||
VerticalAlignment="Center"
|
||||
Padding="10,5"
|
||||
Margin="20,0,40,0" />
|
||||
</StackPanel>
|
||||
</Border>
|
||||
</Grid>
|
||||
</StackPanel>
|
||||
<Button Content="{DynamicResource SaveAndInstall}"
|
||||
Command="{Binding SaveAndInstallCommand}"
|
||||
HorizontalAlignment="Right"
|
||||
VerticalAlignment="Center"
|
||||
Padding="10,5"
|
||||
Margin="20,0,40,0" />
|
||||
</StackPanel>
|
||||
</Border>
|
||||
|
||||
</Grid>
|
||||
</Grid>
|
||||
</views:MvxWindow>
|
||||
|
Loading…
Reference in New Issue
Block a user