private void tabs_Selected(object sender, TabControlEventArgs e) { if (e.TabPage == tabVPNGate) { Settings settings = Settings.Get(); if (!settings.VPNServer.VPNGate) { tabVPNGate.EnableTab(false); return; } else { tabVPNGate.EnableTab(true); } this.EnableForm(false); var servers = VPNGate.GetFastestServers(); var selectedServer = servers.FirstOrDefault(x => x.HostName == settings.VPNGateServerHost); if (selectedServer == null) { selectedServer = servers[0]; } cbVPNGateServer.SelectedIndexChanged -= cbVPNGateServer_SelectedIndexChanged; cbVPNGateServer.DisplayMember = "CountryAndHost"; cbVPNGateServer.DataSource = servers; cbVPNGateServer.SelectedItem = selectedServer; var server = (VPNGateServer)cbVPNGateServer.SelectedItem; lblVPNGateServerInfo.Text = server.ToString(); cbVPNGateServer.SelectedIndexChanged += cbVPNGateServer_SelectedIndexChanged; cbVPNGateConnectRetry.CheckedChanged -= cbVPNGateConnectRetry_CheckedChanged; cbVPNGateConnectRetry.Checked = settings.RetryVPNGateConnect; cbVPNGateConnectRetry.CheckedChanged += cbVPNGateConnectRetry_CheckedChanged; this.EnableForm(); } if (e.TabPage == tabVPNBook) { Settings settings = Settings.Get(); if (!settings.VPNServer.VPNBook) { tabVPNBook.EnableTab(false); return; } else { tabVPNBook.EnableTab(true); } } }
private void cbVPNGateServer_SelectedIndexChanged(object sender, EventArgs e) { var server = (VPNGateServer)cbVPNGateServer.SelectedItem; lblVPNGateServerInfo.Text = server.ToString(); Settings settings = Settings.Get(); settings.VPNGateServerHost = server.HostName; Settings.Save(settings); VPNGate.SelectServer(server); SetRadioButtons(); }
public void GetServersTest() { VPNGate.ServersCSV = Path.GetFullPath(Directory.GetCurrentDirectory() + @"\Assets\VPNGateServers.csv"); var fastestServers = VPNGate.GetFastestServers(); Assert.IsTrue(fastestServers.Count > 0); VPNGate.SelectServer(fastestServers[0]); //Assert.IsTrue(servers.Count > 0); }