ronaldo84
Erfahrenes Mitglied
Hallo Gemeinde,
folgendes Problem:
Ich lade meine Datenbank mittels Nhibernate. Nun habe ich in diversen Tabellen 1:N-Beziehungen. ZB. Ein Lehrer hat ein Fach (ich weiß ist in der Realität nicht wirklich so). Nun habe ich ein DataGridView das alle Lehrer darstellt und in einer Combobox soll man das Fach auswählen können.
Die DataSource der Combobox ist eine List(of Fach).
So sieht mein Lehrer aus (gekürzt):
und mein Fach:
Die Combobox wird korrekt gefüllt, ich kann die Daten auch zuweisen. Wenn ich aber speichere und die Daten neu Lade wirft mir das DataGridView einen DataError aus mit einer ArgumentException und der Meldung "Der DataGridViewComboBoxCell-Wert ist ungültig."
Ich weiß beim besten Willen nicht warum.
Kann mir jemand helfen?
Vielen Dank
folgendes Problem:
Ich lade meine Datenbank mittels Nhibernate. Nun habe ich in diversen Tabellen 1:N-Beziehungen. ZB. Ein Lehrer hat ein Fach (ich weiß ist in der Realität nicht wirklich so). Nun habe ich ein DataGridView das alle Lehrer darstellt und in einer Combobox soll man das Fach auswählen können.
Die DataSource der Combobox ist eine List(of Fach).
Visual Basic:
Dim FDAO As New AFachDAO
Dim lifa As New List(Of A_Fach)
lifa = CType(FDAO.GetAll(), List(Of A_Fach))
dgvLehrer.AutoGenerateColumns = False
dgvLehrer.DataSource = lehrer.GetAll()
CType(dgvLehrer.Columns("AFach"), DataGridViewComboBoxColumn).DataSource = lifa
CType(dgvLehrer.Columns("AFach"), DataGridViewComboBoxColumn).DisplayMember = "Fach"
CType(dgvLehrer.Columns("AFach"), DataGridViewComboBoxColumn).ValueMember = "AFach"
So sieht mein Lehrer aus (gekürzt):
Visual Basic:
Public Class Lehrer
Private __Name As String
Private __Fach As A_Fach
Public Overridable Property Name() As String
Get
Return __Name
End Get
Set(ByVal value As String)
__Name = value
End Set
End Property
Public Overridable Property AFach() As A_Fach
Get
Return __Fach
End Get
Set(ByVal value As A_Fach)
__Fach = value
End Set
End Property
End Class
und mein Fach:
Visual Basic:
Public Class A_Fach
Private __FachID As Integer
Private __Fach As String
Public Overridable Property AFach() As A_Fach
Get
Return Me
End Get
Set(ByVal value As A_Fach)
End Set
End Property
Public Overridable Property FachID() As Integer
Get
Return __FachID
End Get
Set(ByVal value As Integer)
__FachID = value
End Set
End Property
Public Overridable Property Fach() As String
Get
Return __Fach
End Get
Set(ByVal value As String)
__Fach = value
End Set
End Property
End Class
Ich weiß beim besten Willen nicht warum.
Kann mir jemand helfen?
Vielen Dank