private async void connectButton_Click(object sender, RoutedEventArgs e) { try { if (serverExplorer != null) { //await Task.Run(() => serverExplorer.Connect()); //Dispatcher.Invoke(() => serverExplorer.Connect()); await Task.Run(() => Dispatcher.Invoke(() => serverExplorer.Connect())); SaveConnections(); } } catch (Exception ex) { MessageBox.Show(ex.Message); } }