Добавить в корзинуПозвонить
Найти в Дзене

Создание пользовательского события в VB.NET - UserEvent

Пользовательское событие инициализируется оператором Event с указанием имени события и перечислением его параметров. Public Event UserEvent(ByVal int_param1 As Integer, ByVal bool_param2 As Boolean) Создадим класс UserClass, который будет генерировать событие при достижении определенного условия. Public Class UserClass
Public Event UserEvent(ByVal int_param1 As Integer, ByVal bool_param2 As Boolean)
Public Sub Start()
Static i as Integer
i = i + 1;
If i = 3 Then
i = 0;
RaiseEvent UserEvent(i, True)
Else
RaiseEvent UserEvent(i, False)
End If
End Sub
End Class При использовании класса в коде программы можно воспользоваться оператором WithEvents, либо вручную указывать обработчики оператором AddHandler. Пример кода, в котором используется класс с пользовательским событием: Public Class Form1
Private cls As New UserClass
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As Sy

Пользовательское событие инициализируется оператором Event с указанием имени события и перечислением его параметров.

Public Event UserEvent(ByVal int_param1 As Integer, ByVal bool_param2 As Boolean)

Создадим класс UserClass, который будет генерировать событие при достижении определенного условия.

Public Class UserClass

Public Event UserEvent(ByVal int_param1 As Integer, ByVal bool_param2 As Boolean)

Public Sub Start()
Static i as Integer
i = i + 1;
If i = 3 Then
i = 0;
RaiseEvent UserEvent(i, True)
Else
RaiseEvent UserEvent(i, False)
End If
End Sub
End Class

При использовании класса в коде программы можно воспользоваться оператором WithEvents, либо вручную указывать обработчики оператором AddHandler.

Пример кода, в котором используется класс с пользовательским событием:

Public Class Form1

Private cls As New UserClass

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
AddHandler cls.UserEvent, AddressOf UserClassEvent
End Sub

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
cls.Start()
End Sub

Private Sub UserClassEvent(ByVal int_param1 As Integer, ByVal bool_param2 As Boolean)
Debug.Print("int_param1 = " & int_param1 & vbTab & "bool_param2 = " & bool_param2)
End Sub

End Class

#vb.net