Exemple #1
0
        /// <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);
        }
Exemple #2
0
        // 属性
		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);
		}