private async void btnConnect_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                btnConnect.IsEnabled = false;
                if (experimentsVm == null)
                {
                    var handle = uiService.StartIndicateLongOperation("Connecting...");
                    try
                    {
                        managerVm = await ConnectAsync(connectionString.Text);

                        experimentsVm = managerVm.BuildListView();
                    }
                    finally
                    {
                        uiService.StopIndicateLongOperation(handle);
                    }

                    DataContext = experimentsVm;
                    recentValues.ConnectionString = connectionString.Text;
                    connectionString.IsReadOnly   = true;
                    btnConnect.Content            = "Disconnect";
                    btnConnect.IsEnabled          = true;
                    btnNewJob.IsEnabled           = true;
                    btnUpdate.IsEnabled           = true;
                    menuNewJob.IsEnabled          = true;
                    menuNewCatchAll.IsEnabled     = true;
                    btnEdit.Visibility            = Visibility.Collapsed;
                }
                else // disconnect
                {
                    experimentsVm = null;
                    connectionString.IsReadOnly = false;
                    btnConnect.Content          = "Connect";
                    btnConnect.IsEnabled        = true;
                    DataContext               = null;
                    btnNewJob.IsEnabled       = false;
                    btnUpdate.IsEnabled       = false;
                    menuNewJob.IsEnabled      = false;
                    menuNewCatchAll.IsEnabled = false;
                    btnEdit.Visibility        = Visibility.Visible;
                }
            }
            catch (Exception ex)
            {
                btnConnect.IsEnabled = true;
                uiService.ShowError(ex, "Failed to connect");
            }
        }