Imports System
Public Class MainClass
Shared Dim WithEvents anEmployee As EmployeeWithEvents
Public Shared Sub Main()
anEmployee = New EmployeeWithEvents("Joe", 100000)
anEmployee.RaiseSalary(10)
End Sub
Shared Public Sub anEmployee_SalarySecurityEvent(ByVal Sender As EmployeeWithEvents, ByVal e As System.EventArgs) Handles anEmployee.SalarySecurityEvent
Console.WriteLine(Sender.Name & " had an improper salary raise attempted")
End Sub
End Class
Public Class EmployeeWithEvents
Public Name As String
Public Salary As Decimal
Public Event SalarySecurityEvent(ByVal Sender As EmployeeWithEvents,ByVal e As EventArgs)
Public Sub New(ByVal sName As String, ByVal curSalary As Decimal)
Name = sName
Salary = curSalary
End Sub
Public Overloads Sub RaiseSalary(ByVal Percent As Decimal)
RaiseEvent SalarySecurityEvent(Me, New System.EventArgs())
End Sub
End Class