Bonjour à tous,
J'ai bien avancé sur mes classes mais j'ai à nouveau un petit soucis.

Je m'explique: Aujourd'hui j'ai une collection (of T) qui pourrait stocker n'importe quoi. Le problème c'est que je voudrais maintenant m'abonner à PropertyChanged de BaseElement (En fait je ne stocke que des objets dérivés de baseElement) mais je ne peux pas puisque PropertyChanged n'est pas un Event de T (forcement). Est ce que je pourrais remplacer le (T) par BaseElement ?
Je suppose que je pourrais ainsi stocker tous ce qui est dérivé de BaseElement mais je n'en suis pas sûre...


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
Public MustInherit Class BaseCollection(Of T)
        Inherits ReadOnlyDictionary(Of Object, T) ' Wrapper en lecture seul du dictionnaire spécifié
  Friend Overridable Sub Add(ID As Object, element As T)
            Me.Dictionary.Add(ID, element)
            AddHandler element.PropertyChanged, AddressOf PropertyChange  ' Ne fonctionne pas !!!
      End Sub
End Class
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
Public MustInherit Class BaseElement
        Implements INotifyPropertyChanged
Public Event PropertyChanged As PropertyChangedEventHandler Implements INotifyPropertyChanged.PropertyChanged
        Protected Sub OnPropertyChanged(<CallerMemberName()> Optional ByVal propertyName As String = Nothing)
            RaiseEvent PropertyChanged(Me, New PropertyChangedEventArgs(propertyName))
        End Sub
End Class
Merci beaucoup à vous....