Hallo Leuts,
ich hänge an folgendem Problem:
Ich habe eine Form mit einer Listbox, die eine Tabelle Personen über eine ListCollectionView mit Databinding präsentiert. Die Tabelle enthält auch eine Property ID_Anreden, die auf die Anredentabelle verweisen soll.
Beim Auswählen eines ListboxItems, werden dessen Eigenschaften (Name, Vorname.... ID_Anrede) in eine Instanz NewPerson kopiert, damit sie bearbeitet werden können oder mit Button "Neu" wird eine leere NewPerson-Instanz erzeugt. Für die Auswahl der Anrede wollte ich eine Combobox ebenfalls mit Databinding erwenden. In XAML siehts jetzt so aus:
Die Anzeige der Einträge aus der Tabelle in der Combobox Anreden funzt, und in einer Messagebox werden beim Speichern die korrekten Werte ausgegeben. Hier mal die Speichersub:
Spoiler anzeigen
Messageboxausgabe:
Trotzdem kommt die Fehlermeldung bei context.SubmitChanges():
Ich hab nochmal das Projekt angehängt, damit man den Vehler nachfollziehen kann: DispatcherPro.zip
Für Tipps wär ich denkbar dankbar
Gute Nacht,
Vatter
ich hänge an folgendem Problem:
Ich habe eine Form mit einer Listbox, die eine Tabelle Personen über eine ListCollectionView mit Databinding präsentiert. Die Tabelle enthält auch eine Property ID_Anreden, die auf die Anredentabelle verweisen soll.
Beim Auswählen eines ListboxItems, werden dessen Eigenschaften (Name, Vorname.... ID_Anrede) in eine Instanz NewPerson kopiert, damit sie bearbeitet werden können oder mit Button "Neu" wird eine leere NewPerson-Instanz erzeugt. Für die Auswahl der Anrede wollte ich eine Combobox ebenfalls mit Databinding erwenden. In XAML siehts jetzt so aus:
Die Anzeige der Einträge aus der Tabelle in der Combobox Anreden funzt, und in einer Messagebox werden beim Speichern die korrekten Werte ausgegeben. Hier mal die Speichersub:
VB.NET-Quellcode
- Private Sub SaveCommand(sender As System.Object, e As System.Windows.Input.ExecutedRoutedEventArgs)
- Dim _p As Personen
- If lbPersonen.SelectedIndex = -1 Then
- 'neue Person Adden
- DataInstanz.context.AddPerson(DataInstanz.NewPerson)
- Else
- _p = CType(lbPersonen.SelectedItem, Personen)
- _p.ID_Anrede = DataInstanz.NewPerson.ID_Anrede
- _p.Vorname = DataInstanz.NewPerson.Vorname
- _p.Name = DataInstanz.NewPerson.Name
- _p.Geb = DataInstanz.NewPerson.Geb
- _p.Color = DataInstanz.NewPerson.Color
- End If
- With DataInstanz.NewPerson
- 'Probeweise Ausgabe der NewPerson
- MessageBox.Show(String.Format("ID= {0} Vorname= {1} Name= {2} Anrede= {3}", _
- .ID, .Vorname, .Name, .ID_Anrede))
- MessageBox.Show(String.Format("ID= {0} Vorname= {1} Name= {2} Anrede= {3}", _
- _p.ID, _p.Vorname, _p.Name, _p.ID_Anrede))
- End With
- Application.DataInstanz.PersonenView.Refresh()
- Application.DataInstanz.Speichern.Execute(Nothing)
- lbPersonen.SelectedIndex = -1
- DataInstanz.NewPerson = New Personen
- tb_Vorname.Focus()
- tb_Vorname.SelectAll()
- End Sub
Messageboxausgabe:
Trotzdem kommt die Fehlermeldung bei context.SubmitChanges():
Ich hab nochmal das Projekt angehängt, damit man den Vehler nachfollziehen kann: DispatcherPro.zip
Für Tipps wär ich denkbar dankbar
Gute Nacht,
Vatter
Seit 26.Mai 2012 Oppa!