/// <summary> /// Show connection dialog and return a valid datasource if succeeded. /// </summary> private IDataSource TryConnectDatasource(DBMSPlatformEnum dbmsEnum) { DBMSContext context = _instance.GetDBMSContext(dbmsEnum); DBLoginInfo login = context.CreateDBLoginInfo(); PropertyDlg dlg = new PropertyDlg("Connect to " + dbmsEnum.ToString()); ObjValueLabelHint hint = null; List <string> dataSources = _instance.GetDataSources(dbmsEnum); if (dataSources != null && dataSources.Count > 0) { hint = new ObjValueLabelHint(); hint.ValueHints = new Dictionary <string, IEnumerable <string> >(); hint.ValueHints.Add("DataSource", dataSources); } dlg.AddOption(login, hint); if (dlg.ShowDialog() != DialogResult.OK) { return(null); } IDataSource svr = context.CreateDatasource(login.ConnectionString); if (!svr.TestConnection()) { MessageBoxEx.ShowError(svr.LastErrorMessage, "Connection Failed"); return(null); } // Remember the connection Dictionary <string, string> connectionList = _instance.GetServerConnectionList(dbmsEnum); Macros.SafeAdd(connectionList, login.DataSource, login.ConnectionString); return(svr); }
// 属性 private void Property_menu(object sender, System.EventArgs e) { /* // 测试用 //string strMessage = "SelectedFieldIndices.Count=" + Convert.ToString(this.SelectedFieldIndices.Count) + "\r\n"; //strMessage += "nStartFieldIndex=" + Convert.ToString(this.nStartFieldIndex)+ "\r\n"; if (this.FocusedField != null) MessageBox.Show(this,this.FocusedField.m_strValue); */ PropertyDlg dlg = new PropertyDlg(); GuiUtil.AutoSetDefaultFont(dlg); dlg.MarcEditor = this; dlg.StartPosition = FormStartPosition.CenterScreen; dlg.ShowDialog(this); }