private void _clientFiltersConnectionTypeComboBox_PreviewMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
var connectionType = (ConnectionType)_clientFiltersConnectionTypeComboBox.SelectedItem;
if (connectionType == ConnectionType.None || connectionType == ConnectionType.Tcp)
{
_clientFiltersProxyUriTextBox.IsEnabled = false;
_clientFiltersProxyUriTextBox.Text = "";
}
else
{
_clientFiltersProxyUriTextBox.IsEnabled = true;
if (!string.IsNullOrWhiteSpace(_clientFiltersProxyUriTextBox.Text)) return;
string scheme = null;
int port = 0;
var regex = new Regex(@"(.+?):(.+):(\d*)");
Match match = regex.Match(_clientFiltersProxyUriTextBox.Text);
if (connectionType == ConnectionType.Socks5Proxy)
{
scheme = "tcp";
port = 1080;
}
else if (connectionType == ConnectionType.HttpProxy)
{
scheme = "tcp";
port = 80;
}
if (!match.Success)
{
_clientFiltersProxyUriTextBox.Text = string.Format("{0}:127.0.0.1:{1}", scheme, port);
}
else
{
_clientFiltersProxyUriTextBox.Text = string.Format("{0}:{1}:{2}", match.Groups[1].Value, match.Groups[2].Value, match.Groups[3].Value);
}
}
}