private void mnuConnect_Click(object sender, EventArgs e) { try { using (frmChooseDatasource frmChooseDatasource = new frmChooseDatasource()) { if (frmChooseDatasource.ShowDialog() == System.Windows.Forms.DialogResult.OK) { IDataSourceProviderEditor provEditor = DataSourceProviderManager.CreateProviderEditor(frmChooseDatasource.SelectedProvider); Form frmEditor = (Form)provEditor; if (frmEditor.ShowDialog() == DialogResult.OK) { this.Cursor = Cursors.WaitCursor; m_dsProvider = (DataSourceProvider)provEditor.CreateProvider(); UpdateControls(); UpdateDataGridView(m_dsProvider.Information); UpdateMessage("Data source of type '" + frmChooseDatasource.SelectedProvider + "' was successfully connected."); this.Cursor = Cursors.Default; } } } } catch(Exception ex) { this.Cursor = Cursors.Default; UpdateMessage("Exception: " + ex.Message); MessageBox.Show(ex.Message, "Exception", MessageBoxButtons.OK, MessageBoxIcon.Error); } }