//Speichern Button protected void OnBtnSaveMClicked(object sender, EventArgs e) { //Prüfen, ob es sich um einen Angestellten oder Arbeiter handelt if (arb == null) { //Angestellter --- //erstellen einer Variable gehalt double gehalt; //Vorname und Nachname, wie angegeben abspeichern, im Angestelltenobjekt, dass übergeben wurde ang.Set_Vorname(txt_vn_m.Text); ang.Set_Nachname(txt_nn_m.Text); //Prüfen, ob das Gehalt geparst werden kann, oder nicht //Hier werden Strings abgefangen if (!double.TryParse(txt_g_m.Text, out gehalt)) { //Wenn es nicht geparst werden kann, wird das Gehalt, wieder auf den alten WErt gesetzt gehalt = ang.Get_Brutto(); } //Ändern des Gehalts im übergebenen Objekt ang.Set_Brutto(gehalt); } else { //Arbeiter --- //Variable für die Zeit und den Lohn double zeit; double lohn; //Speichern des Vor- und Nachnames im Objekt arb.Set_Vorname(txt_vn_m.Text); arb.Set_Nachname(txt_nn_m.Text); //Prüfen, ob Valide Werte übergeben werden if (!double.TryParse(txt_lohn_m.Text, out lohn)) { //falls nicht geparst werden kann, wird der alte Wert genommen lohn = arb.Get_Lohn(); } if (!double.TryParse(txt_zeit_m.Text, out zeit)) { //falls nicht geparst werden kann, wird der alte Wert genommen zeit = arb.Get_Stunden(); } //Setzen des Lohns und der Zeit arb.Set_Lohn(lohn); arb.Set_zahl(zeit); } //Vor dem Schließen wird noch die Anzeige im Hauptfenster angepasst parent.fill_table(); //Schließen des Fensters this.Destroy(); }
//Konstruktor, bei Übergabe eines Arbeiters public WMitarbeiter(CArbeiter Arbeiter, MainWindow n_parent) : base(Gtk.WindowType.Toplevel) { //ANzeige erstellen, wie diese zuvor definiert wurde Build(); //Die übergebene Anzeige abspeichern parent = n_parent; //Nicht genutzte Lables und Textfelder ausblenden lbl_gehalt.Hide(); txt_g_m.Hide(); //Arbeiter in Variable abspeichern arb = Arbeiter; //Daten abfragen und eintragen txt_nn_m.Text = arb.Get_Nachname(); txt_vn_m.Text = arb.Get_Vorname(); txt_lohn_m.Text = arb.Get_Lohn().ToString(); txt_zeit_m.Text = arb.Get_Stunden().ToString(); //Angestellten auf null setzten, da nicht benutzt ang = null; }