Hallo Com,
ich hab mir mal was gebastelt und ich denke, das kann manchen hier auch interessieren (ist ganz simpel).
Manch einer hatte vielleicht schon das Problem er hat eine Property, die der User verändern kann oder vom System einfach geändert wird (beim Beispiel ist beides der Fall). Und man möchte wissen wann der Wert sich verändert hat.
Beispiel: hier die Property WindowState einer Form:
wir benötigen:
1 Event zum handlen:
in dem Event lass ich noch den neuen State übergeben damit man den Code kürzen kann
1 Property, die verändert wird:
man muss es als Overloads deklarieren damit es die Standard-Property überschreibt
jetzt zum verfeinern:
wir fragen ab ob sich der Wert beim Setten verändert hat mit
da der Wert sich auch noch verändern soll, wenn es ein neuer ist weisen wir diesen wieder zu :
da sich dieser dann ja verändert hat benutzten wir einfach RaiseEvent um das Event aufzurufen:
dabei übergebe ich auch gleichzeitig den neuen Wert
im Ganzen sieht das dann so aus
Ich hoffe das ganze hat euch geholfen.
MfG M4n94fr34k
ich hab mir mal was gebastelt und ich denke, das kann manchen hier auch interessieren (ist ganz simpel).
Manch einer hatte vielleicht schon das Problem er hat eine Property, die der User verändern kann oder vom System einfach geändert wird (beim Beispiel ist beides der Fall). Und man möchte wissen wann der Wert sich verändert hat.
Beispiel: hier die Property WindowState einer Form:
wir benötigen:
1 Event zum handlen:
in dem Event lass ich noch den neuen State übergeben damit man den Code kürzen kann
1 Property, die verändert wird:
man muss es als Overloads deklarieren damit es die Standard-Property überschreibt
jetzt zum verfeinern:
wir fragen ab ob sich der Wert beim Setten verändert hat mit
da der Wert sich auch noch verändern soll, wenn es ein neuer ist weisen wir diesen wieder zu :
da sich dieser dann ja verändert hat benutzten wir einfach RaiseEvent um das Event aufzurufen:
dabei übergebe ich auch gleichzeitig den neuen Wert
im Ganzen sieht das dann so aus
VB.NET-Quellcode
- Public Event OnWindowStateChange(ByVal state As FormWindowState)
- Public Overloads Property WindowState() As FormWindowState
- Get
- Return MyBase.WindowState
- End Get
- Set(ByVal value As FormWindowState)
- If MyBase.WindowState <> value Then
- MyBase.WindowState = value
- RaiseEvent OnWindowStateChange(value)
- End If
- End Set
- End Property
Ich hoffe das ganze hat euch geholfen.
MfG M4n94fr34k
Gruß Mangafreak