Events von übergeordneter Class ausführen lassen
Hallo,
Ich hab folgendes Problem:
Ich habe eine Class A, innerhalb dieser Class A gibt es eine Auflistung von Class B´s.
Ich werde in meiner Class Form1 die Class A einbauen mi WithEvents.
Jetzt mein Problem:
Die Class B ist innerhalb der Class A und wirft Events.
Ich möchte aber, dass wenn der Sub "EventAbfeuern" aufgerufen wird, dass dann der Event von der Class A geworfen wird. Ich weiß, dass ich irgendwie Delegates verwenden muss, aber ich versteh nicht genau wie...
Ich hoffe, ihr könnt mir helfen!
Hier ein Beispiel zur Veranschaulichung:
Vielen Dank im Voraus!
Mit freundlichen Grüßen,
Chrisotpher
Ich hab folgendes Problem:
Ich habe eine Class A, innerhalb dieser Class A gibt es eine Auflistung von Class B´s.
Ich werde in meiner Class Form1 die Class A einbauen mi WithEvents.
Jetzt mein Problem:
Die Class B ist innerhalb der Class A und wirft Events.
Ich möchte aber, dass wenn der Sub "EventAbfeuern" aufgerufen wird, dass dann der Event von der Class A geworfen wird. Ich weiß, dass ich irgendwie Delegates verwenden muss, aber ich versteh nicht genau wie...
Ich hoffe, ihr könnt mir helfen!
Hier ein Beispiel zur Veranschaulichung:
Public Class A
Dim l as New List(Of B)
<Serializable()> Public Class B
Private Sub EventAbfeuern()
End Sub
End Class
End Class
Vielen Dank im Voraus!
Mit freundlichen Grüßen,
Chrisotpher
Please also mark the comments that contributed to the solution of the article
Content-Key: 294508
Url: https://administrator.de/contentid/294508
Printed on: April 27, 2024 at 03:04 o'clock
5 Comments
Latest comment
Hi there,
like this ?
Flachkoepper
like this ?
Public Class Form1
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Dim cA As New A
End Sub
End Class
Public Class A
WithEvents mytest As New B
Friend Shared Event eventA()
Private Sub A_eventA() Handles Me.eventA
MsgBox("EventA Fired")
End Sub
Public Class B
Private Event eventB()
Public Sub New()
RaiseEvent eventA()
End Sub
End Class
End Class
Flachkoepper
Hi,
etwa so
E.
etwa so
Public Class A
Dim l as New List(Of B)
sub AddClassB
dim CB as new ClassB
AddHandler CB.ClassB_changed, AddressOff Child_ClassB_changed
I.Add(CB)
end sub
sub Child_ClassB_changed(Sender as object, e as EventArgs)
msgbox("Ein Element von I hat ClassB_changed ausgelöst.")
end sub
<Serializable()> Public Class B
Public Event ClassB_changed(Sender as object, e as EventArgs)
Private Sub EventAbfeuern()
RaiseEvent ClassB_changed(Me, nothing)
End Sub
End Class
End Class
E.