private void externeKostenEditButton_Click(object sender, EventArgs e) { int externeKosteneId; DataGridViewSelectedRowCollection selectedRow; if (externeKostenDataGrid.SelectedRows.Count == 1 && externeKostenDataGrid.SelectedRows[0].Cells[0].Value != null) { selectedRow = externeKostenDataGrid.SelectedRows; externeKosteneId = Int32.Parse(selectedRow[0].Cells[0].Value.ToString()); //Connect auf Tabelle inkl. dem Mapping Table <ExterneKosten> externeKostenTableDefinition = dbContext.GetTable <ExterneKosten>(); Table <Kostenart> kostenartTableDefinition = dbContext.GetTable <Kostenart>(); //Abfrage var zu_ressource = from externeKosten in externeKostenTableDefinition where externeKosten.externeKostenId == externeKosteneId join kostenart in kostenartTableDefinition on externeKosten.kostenartId equals kostenart.kostenartId select new { externeKosten, kostenart }; if (zu_ressource.Any()) { ExterneKosten externeKosten = zu_ressource.First().externeKosten; Kostenart kostenart = zu_ressource.First().kostenart; //open edit Dialog -> ein element editieren addExterneKostenForm = new AddExterneKostenForm(dbContext, true, externeKosteneId); addExterneKostenForm.AbweichungsgrundTextBox.Text = externeKosten.abweichungsbegruendung.ToString(); addExterneKostenForm.KostenGeplantTextBox.Text = externeKosten.geplannteKosten.ToString(); addExterneKostenForm.KostenEffektivTextBox.Text = externeKosten.effektiveKosten.ToString(); addExterneKostenForm.KostenartComboBox.SelectedIndex = addExterneKostenForm.KostenartComboBox.FindString(kostenart.bezeichnung); addExterneKostenForm.ShowDialog(); if (addExterneKostenForm.DialogResult == DialogResult.OK) { externeKosten.abweichungsbegruendung = addExterneKostenForm.AbweichungsgrundTextBox.Text; externeKosten.geplannteKosten = Decimal.Parse(addExterneKostenForm.KostenGeplantTextBox.Text); externeKosten.effektiveKosten = Decimal.Parse(addExterneKostenForm.KostenEffektivTextBox.Text); externeKosten.kostenartId = ((KostenartComboboxItem)addExterneKostenForm.KostenartComboBox.SelectedItem).Value.kostenartId; //Aenderung auf DB auslösen dbContext.SubmitChanges(); } } // datagrid neu befüllen loadExterneKostenDataGrid(); } }
public KostenartComboboxItem(Kostenart kostenart) { this.Value = kostenart; this.Text = kostenart.bezeichnung; }