Abend,
Ich hab hier (mal) wieder ein Problem mit INotifyPropertyChanged.
Nach dem ich mich jetzt näher mit INotifyPropertyChanged beschäftigt habe und es endlich zum laufen gebracht habe stehe ich jetzt vor einem sehr interessanten Problem.
Ich verwende das EntityFramework zum erstellen einer Klasse => Model
Die heißt Konto_V01 hat mehrere Properties die für die Frage relevanten sind:
Diese sind 2 NavigationProperties im EF zu einer anderen Entität "Transactions_V01"
in meinem hier ausdifferenzierten Viewmodel sind die beiden in einer eigenen Property eingebaut (ich weiß Boilerplate Code usw. aber ich versuche den Aufbau von MVVM zum üben exakt zu leben)
Die Methode NotifyPropertyChanged sieht so aus:
Beide Properties benötige ich ein einer gemeinsamen Property um sie in einem Datagrid anzuzeigen:
(Danke an EDR für diesen Code Tipp)
Blöderweise bekommt aber diese MixedChildren keine Änderungen mit wenn eine Transaction hinzugefügt wird (egal ob ich das direkt in Transactions_v01 teste oder über die Navigationproperty versuche)
Kann ich INotifyPropertyChanged irgendwie dafür nutzen MixedChildren zu aktualisieren oder bin ich total auf dem Holzweg?
Ich hab hier (mal) wieder ein Problem mit INotifyPropertyChanged.
Nach dem ich mich jetzt näher mit INotifyPropertyChanged beschäftigt habe und es endlich zum laufen gebracht habe stehe ich jetzt vor einem sehr interessanten Problem.
Ich verwende das EntityFramework zum erstellen einer Klasse => Model
Die heißt Konto_V01 hat mehrere Properties die für die Frage relevanten sind:
Diese sind 2 NavigationProperties im EF zu einer anderen Entität "Transactions_V01"
in meinem hier ausdifferenzierten Viewmodel sind die beiden in einer eigenen Property eingebaut (ich weiß Boilerplate Code usw. aber ich versuche den Aufbau von MVVM zum üben exakt zu leben)
VB.NET-Quellcode
-
- Public Property m_nv_kto_2_trans As ObservableCollection(Of transactions_v01)
- Get
- Debug.Print("nv_kto_2_trans Änderung")
- Return nv_kto_2_trans
- End Get
- Set(value As ObservableCollection(Of transactions_v01))
- If Not value Is nv_kto_2_trans Then
- nv_kto_2_trans = value
- NotifyPropertyChanged()
- Debug.Print("nv_kto_2_trans Notify")
- End If
- End Set
- End Property
- Public Property m_nv_kto_2_trans_transfer As ObservableCollection(Of transactions_v01)
- Get
- Debug.Print("nv_kto_2_trans_transfer Änderung")
- Return nv_kto_2_trans_transfer
- End Get
- Set(value As ObservableCollection(Of transactions_v01))
- If Not value Is nv_kto_2_trans_transfer Then
- nv_kto_2_trans_transfer = value
- NotifyPropertyChanged()
- Debug.Print("nv_kto_2_trans_transfer notify")
- End If
- End Set
- End Property
Die Methode NotifyPropertyChanged sieht so aus:
Beide Properties benötige ich ein einer gemeinsamen Property um sie in einem Datagrid anzuzeigen:
VB.NET-Quellcode
-
- Public ReadOnly Property MixedChildren As ObservableCollection(Of transactions_v01) 'As IEnumerable
- Get
- 'Return nv_kto_2_trans.Cast(Of Object).Concat(nv_kto_2_trans_transfer.Cast(Of Object))
- Debug.Print("Konto Mixed Children call")
- Debug.Print("Kto2Trans " & m_nv_kto_2_trans.Count.ToString)
- Debug.Print("Kto2TransTransfer " & m_nv_kto_2_trans_transfer.Count.ToString)
- Return New ObservableCollection(Of transactions_v01)(m_nv_kto_2_trans.Concat(m_nv_kto_2_trans_transfer))
- End Get
- End Property
(Danke an EDR für diesen Code Tipp)
Blöderweise bekommt aber diese MixedChildren keine Änderungen mit wenn eine Transaction hinzugefügt wird (egal ob ich das direkt in Transactions_v01 teste oder über die Navigationproperty versuche)
Kann ich INotifyPropertyChanged irgendwie dafür nutzen MixedChildren zu aktualisieren oder bin ich total auf dem Holzweg?
mfG.
Stephan
Stephan