Hallo Leute,
leider hab ich schon wieder ein Problem.
Im Code-Behind eines WPF-Programms ist ein Property vom Typ ObservableCollection(of...) angelegt. Das Prgramm soll reagieren, wenn sich ein bestimmtes Property in der Collection verändert. Get und Set des Property vom Typ ObservableCollection(of...) werden bei einer Änderung aber nicht durchlaufen, sondern nur wenn der Collection etwas hinzugefügt oder gelöscht wird. In der zugewiesenen Klasse wird die Änderung des Propertys erkannt.
Leider habe ich keine Ahnung, wie man nun über ein Event in der Klasse den Code-Behind benachrichtigt, bzw. sogar übergibt welches Property an welchem Index sich geändert hat.
Die Collection:
Spoiler anzeigen
die Timer_Klasse (Ausschnitt)
Spoiler anzeigen
Code_behind:
Leider klappt das nicht. Das Event wird im Code-Behind nicht ausgelöst. In der Klasse wirds aber gefeuert.
Ich befürchte, dass ich da mal wieder komplett auf dem Holzweg bin...![:(](https://www.vb-paradise.de/wcf/images/smilies/sad.png)
P.S. die ObservableCollection ist noch mit einer ICollectionView verbunden, falls das vielleicht etwas zur Lösung beitragen kann.
Gruß
eddi
leider hab ich schon wieder ein Problem.
Im Code-Behind eines WPF-Programms ist ein Property vom Typ ObservableCollection(of...) angelegt. Das Prgramm soll reagieren, wenn sich ein bestimmtes Property in der Collection verändert. Get und Set des Property vom Typ ObservableCollection(of...) werden bei einer Änderung aber nicht durchlaufen, sondern nur wenn der Collection etwas hinzugefügt oder gelöscht wird. In der zugewiesenen Klasse wird die Änderung des Propertys erkannt.
Leider habe ich keine Ahnung, wie man nun über ein Event in der Klasse den Code-Behind benachrichtigt, bzw. sogar übergibt welches Property an welchem Index sich geändert hat.
Die Collection:
VB.NET-Quellcode
die Timer_Klasse (Ausschnitt)
VB.NET-Quellcode
- Implements INotifyPropertyChanged 'benachrichtigt die Oberfläche (View) bei Änderung eines Propertys
- Public Event PropertyChanged As PropertyChangedEventHandler Implements INotifyPropertyChanged.PropertyChanged
- Private Sub raisepropertychanged(<CallerMemberName> Optional ByVal prop As String = "") 'wird bei Änderung in den Propertys aufgerufen
- RaiseEvent PropertyChanged(Me, New PropertyChangedEventArgs(prop))
- End Sub
- Public Event werwars_event()
- Private Sub werwars(<CallerLineNumber> Optional ByVal index As Integer = 0) 'wird bei Änderung in den Propertys aufgerufen
- RaiseEvent werwars_event()
- End Sub
- Private _vorlaufzeit As Long
- Public Property Vorlaufzeit As Long
- Get
- Return _vorlaufzeit
- End Get
- Set(value As Long)
- _vorlaufzeit = value
- raisepropertychanged() 'der Oberfläche wird die Änderung des Property mitgeteilt
- werwars()
- End Set
- End Property
Code_behind:
Leider klappt das nicht. Das Event wird im Code-Behind nicht ausgelöst. In der Klasse wirds aber gefeuert.
Ich befürchte, dass ich da mal wieder komplett auf dem Holzweg bin...
![:(](https://www.vb-paradise.de/wcf/images/smilies/sad.png)
P.S. die ObservableCollection ist noch mit einer ICollectionView verbunden, falls das vielleicht etwas zur Lösung beitragen kann.
Gruß
eddi