[VB.net] EventRaise werkt niet in <Class>.New

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • P-Storm
  • Registratie: September 2006
  • Laatst online: 19-09 13:55
Ik heb me een tijdje loos zitten zoeken, alleen weet ik niet hoe het officieel zou moeten. Ik heb het opgelost door een sub aan te maken en die zo snel mogelijk aanroep (bvb in Form1_Load en dan TestClass.Init) waarin de RaiseEvent komt.

De form
Visual Basic .NET:
1
2
3
4
5
6
7
8
9
10
11
12
Class Form1
  Public WithEvents TestClass As New SendClass()

  Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) _
   Handles MyBase.Load

  End Sub

  Public Sub Receive(ByVal msg As String) Handles testclass.newmessage
    msgbox("Message werk en is: " & msg)
  End Sub
End Class


De custom class
Visual Basic .NET:
1
2
3
4
5
6
7
8
Class SendClass

  Public Event NewMessage(ByVal msg As String)

  Sub New()
    RaiseEvent NewMessage("Test")
  End Sub
End Class


Ik heb google proberen te gebruiken, zoiets als "Custom Class New RaiseEvent doesn't work" en dingen in die catagorie, maar kon het niet vinden. Het kan ook zijn dat ik heel het concept van "New Object" niet goed snap, en daardoor deze fout maak. Deze twijfel is er omdat ik mezelf VB .net heb aangeleerd ;)

Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Die "sub new()" noemt men een constructor. En als je die termen kent is het inderdaad niet (meer) zo moeilijk te vinden:
Non-shared events should not be raised within the constructor of the class in which they are declared. Although such events do not cause run-time errors, they may fail to be caught by associated event handlers. Use the Shared modifier to create a shared event if you need to raise an event from a constructor.

[ Voor 19% gewijzigd door RobIII op 15-07-2009 02:03 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Acties:
  • 0 Henk 'm!

  • P-Storm
  • Registratie: September 2006
  • Laatst online: 19-09 13:55
Dat was snel :9

Zo te zien nog genoeg leesvoer voor de komende dagen. Zal het proberen zoals het daar staat. En ja als je de terminologie weet dan had ik het ook zo gevonden ;) .