private void AddUser(object sender, RoutedEventArgs e) { var frmAdd = new FrmAddUser(_ds); frmAdd.ShowDialog(); _ds.WriteXml(_xmlPath); }
public MainWindow() { InitializeComponent(); string[] xmlFiles = {"users"}; //String-Array mit den benötigten Dateien _ds.DataSetName = "users"; if(_initxml.XMLStructureInitialized(xmlFiles)) { InitUserTable(); } else { _initxml.CreateXMLFileStructure(xmlFiles); MessageBox.Show("Dies ist der erste Start von Ambulance Merseburg Apotheken Manager."+Environment.NewLine + "Sie müssen nun einen Benutzer erstellen.", "Willkommen", MessageBoxButton.OK, MessageBoxImage.Information); var addUser = new FrmAddUser(_ds); addUser.ShowDialog(); _ds.WriteXml(_xmlPath); InitUserTable(); } }
/// <summary> /// Methode zum Laden der User-Daten in die Form /// </summary> private void InitUserTable() { CboUsername.Items.Clear(); var xmlFile = XmlReader.Create(_xmlPath, new XmlReaderSettings()); try { if(_ds.Tables.Count > 0) { CboUsername.ItemsSource = _ds.Tables["user"].DefaultView; CboUsername.SelectedIndex = 0; } else { _ds.ReadXml(xmlFile); xmlFile.Close(); if(_ds.Tables.Count > 0) { CboUsername.ItemsSource = _ds.Tables["user"].DefaultView; CboUsername.SelectedIndex = 0; } } } catch(XmlException ex) { MessageBox.Show("Die Benutzerdatenbank ist korrupt. Es wird nun eine neue Benutzerdatenbank angelegt." + Environment.NewLine + Environment.NewLine + "Die korrupte Benutzerdatenbank wird gesichert und der Administrator per eMail kontaktiert. Bitte einen Moment Geduld.", "Fehler", MessageBoxButton.OK, MessageBoxImage.Error); File.Move(_xmlPath, _xmlPath + ".corrupt"); File.Delete(_xmlPath); _initxml.CreateXMLFileStructure("users"); var exReport = new ExceptionReporter(ex); exReport.ReportExceptionToAdmin(_xmlPath + ".corrupt"); } if(!CboUsername.HasItems) { MessageBoxResult messageResult = MessageBox.Show("Die Benutzerdatenbank enthält keinen Benutzer." + Environment.NewLine + "Sie müssen nun einen Benutzer anlegen um fortfahren zu können.", "Fehler", MessageBoxButton.OKCancel, MessageBoxImage.Error); if(messageResult == MessageBoxResult.OK) { var addUser = new FrmAddUser(_ds); addUser.ShowDialog(); _ds.WriteXml(_xmlPath); CboUsername.ItemsSource = _ds.Tables["user"].DefaultView; CboUsername.SelectedIndex = 0; } else { Environment.Exit(1); } } }