private void CommandBinding_CanExecute(object sender, CanExecuteRoutedEventArgs e) { if ((cmbConnMode != null) && (cmbConnMode.SelectedItem != null)) { X_LoginDbParas args = cmbConnMode.SelectedItem as X_LoginDbParas; if (args.Name == ATTACH_FILE) { e.CanExecute = false; } else { if (string.IsNullOrEmpty(cmbServername.Text)) { e.CanExecute = false; return; } if (string.IsNullOrEmpty(txtUsername.Text)) { e.CanExecute = false; return; } e.CanExecute = true; } } }
private void cmbConnMode_SelectionChanged(object sender, SelectionChangedEventArgs e) { X_LoginDbParas args = cmbConnMode.SelectedItem as X_LoginDbParas; if (args.Name == ATTACH_FILE) { panelDatabaseFile.Visibility = System.Windows.Visibility.Visible; //paneServername.Visibility = System.Windows.Visibility.Collapsed; panelUsername.Visibility = System.Windows.Visibility.Collapsed; panelPassword.Visibility = System.Windows.Visibility.Collapsed; panelDatabase.Visibility = System.Windows.Visibility.Collapsed; } else { panelDatabaseFile.Visibility = System.Windows.Visibility.Collapsed; panelUsername.Visibility = System.Windows.Visibility.Visible; panelPassword.Visibility = System.Windows.Visibility.Visible; panelDatabase.Visibility = System.Windows.Visibility.Visible; } }
private void butGetDbList_Click(object sender, RoutedEventArgs e) { if (string.IsNullOrEmpty(cmbServername.Text)) { cmbServername.Focus(); return; } if (string.IsNullOrEmpty(txtUsername.Text)) { txtUsername.Focus(); return; } CoreEA.ICoreEAHander core = null; switch (X_CurUIMode) { case CurUIMode.ForSqlServer: core = new CoreEA.CoreE(CoreEA.CoreE.UsedDatabaseType.SqlServer).X_Handler; break; case CurUIMode.ForMySql: core = new CoreEA.CoreE(CoreEA.CoreE.UsedDatabaseType.MySql).X_Handler; break; } LoginInfo_SqlServer info = new LoginInfo_SqlServer(); X_LoginDbParas args = cmbConnMode.SelectedItem as X_LoginDbParas; if (args.Name == ATTACH_FILE) { info = new LoginInfo_SqlServer() { X_Server = cmbServername.Text, AttchFile = txtDbFileLocation.Text, //attach file mode need trust connection IsTrustedConn = true, }; } else { info = new LoginInfo_SqlServer() { X_Server = cmbServername.Text, X_UserName = txtUsername.Text, X_Pwd = passwordBox1.Password, IsTrustedConn = (bool)chkIsTrustedConn.IsChecked, }; } if (cmbConnMode.SelectedItem != null) { info.X_CurDbConnectionMode = ((X_LoginDbParas)cmbConnMode.SelectedItem).CurConnMode; } try { core.Open(info); } catch (Exception ee) { MessageBox.Show(ee.Message); return; } if (core.IsOpened) { cmbDbName.Items.Clear(); foreach (var item in core.GetDatabaseList()) { cmbDbName.Items.Add(item); } if (cmbDbName.Items.Count > 1) { cmbDbName.SelectedIndex = 0; } core.Close(); core.Dispose(); } }