Files
Kanalsanierungsverwaltung/SanSystem/FrmAuftraggeberEdit.cs
Husky d0cfb7e417 Auftraggeber bug
Wird beim auswählen aus der Liste nun auch gespeichert
Und wird die gesammte Liste hinzugefügt
2021-03-25 17:10:53 +01:00

90 lines
2.9 KiB
C#

using Database;
using KlassenBIB;
using SanShared;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace SanSystem
{
/// <summary>
///
/// </summary>
public partial class frmAuftraggeberEdit : Form
{
IAuftraggeber auftraggeber;
public IAuftraggeber Auftraggeber
{
get
{
return auftraggeber;
}
}
/// <summary>
///
/// </summary>
public frmAuftraggeberEdit(IAuftraggeber auftraggeber)
{
InitializeComponent();
if (auftraggeber == null) auftraggeber = new Auftraggeber();
this.auftraggeber = auftraggeber;
cb_auftraggeberlist.DataSource = Datenbank.Instance.TeufelDB.Auftraggeber; //Datenbank.Instance.MainDatenbank.AuftraggeberListe;
MakeBindings();
}
private void FrmAuftraggeberEdit_FormClosing(object sender, FormClosingEventArgs e)
{
ClearBindings();
}
private void btn_save_Click(object sender, EventArgs e)
{
// Prüfen ob Auftraggeber bereits in Liste excistiert und notfalls hinzufügen
bool vorhanden = (Datenbank.Instance.TeufelDB.Auftraggeber.FindAll(x => x.Name.Equals(txt_name.Text) && x.Ansprechpartner.Equals(txt_ansp.Text))).Count > 0;
if (!vorhanden) Datenbank.Instance.TeufelDB.Auftraggeber.Add(new Auftraggeber()
{
Ansprechpartner = this.Auftraggeber.Ansprechpartner,
Name = this.Auftraggeber.Name,
Strasse = this.Auftraggeber.Strasse,
Ort = this.Auftraggeber.Ort
});
this.Close();
}
private void MakeBindings()
{
if (auftraggeber == null) return;
txt_name.DataBindings.Add("Text", this.auftraggeber, "Name");
txt_ort.DataBindings.Add("Text", this.auftraggeber, "Ort");
txt_strasse.DataBindings.Add("Text", this.auftraggeber, "Strasse");
txt_ansp.DataBindings.Add("Text", this.auftraggeber, "Ansprechpartner");
}
private void ClearBindings()
{
txt_name.DataBindings.Clear();
txt_ort.DataBindings.Clear();
txt_strasse.DataBindings.Clear();
txt_ansp.DataBindings.Clear();
}
private void Cb_auftraggeberlist_SelectionChangeCommitted(object sender, EventArgs e)
{
ClearBindings();
Auftraggeber selected = (Auftraggeber)cb_auftraggeberlist.SelectedItem;
if (selected == null) return;
auftraggeber = selected;
Datenbank.Instance.loadedProjekt.Auftraggeber = selected;
MakeBindings();
}
}
}