Raise your own event : RaiseEvent « Event « VB.Net Tutorial

VB.Net Tutorial
1. Language Basics
2. Data Type
3. Operator
4. Statements
5. Date Time
6. Class Module
7. Development
8. Collections
9. Generics
10. Attributes
11. Event
12. Stream File
13. GUI
14. GUI Applications
15. 2D Graphics
16. I18N Internationlization
17. Reflection
18. Regular Expressions
19. Security
20. Socket Network
21. Thread
22. Windows
23. XML
24. Database ADO.net
25. Design Patterns
Microsoft Office Word 2007 Tutorial
Java
Java Tutorial
Java Source Code / Java Documentation
Java Open Source
Jar File Download
Java Articles
Java Products
Java by API
C# / C Sharp
C# / CSharp Tutorial
ASP.Net
JavaScript DHTML
JavaScript Tutorial
JavaScript Reference
HTML / CSS
HTML CSS Reference
C / ANSI-C
C Tutorial
C++
C++ Tutorial
PHP
Python
SQL Server / T-SQL
Oracle PL / SQL
Oracle PL/SQL Tutorial
PostgreSQL
SQL / MySQL
MySQL Tutorial
VB.Net
VB.Net Tutorial » Event » RaiseEvent 
11. 4. 1. Raise your own event
 
 


Option Strict On

Public Class Tester
   Dim WithEvents Shared acct As Account

   Public Shared Sub Main()
      Dim warning As MyEventHander = AddressOf Display

      Dim bal As Decimal
      acct = New Account(200.00d)
      
      bal = acct.Deposit(0.00d)

      bal = acct.Debit(400.00d)

      bal = acct.Debit(5000.00d)


   End Sub

   Friend Shared Sub Display(sender As Object,e As MyEventArgs)
      Console.WriteLine("Warning: The balance of {0} has fallen below {1}.", _
                        e.balance, e.WarningLevel)
   End Sub
End Class



Public Class MyEventArgs : Inherits EventArgs
   Private level As Decimal
   Private current As Decimal

   Public Sub New(warningLevel As Decimal, currentBalance As Decimal)
      Me.level = warningLevel
      Me.current = currentBalance
   End Sub

   Public ReadOnly Property WarningLevel As Decimal
      Get
         Return level
      End Get
   End Property

   Public ReadOnly Property Balance As Decimal
      Get
         Return current
      End Get
   End Property
End Class

Public Delegate Sub MyEventHander(sender As Object, _
                                      As MyEventArgs)

Public Class Account
   Private warningLevel As Decimal
   Private balance As Decimal

   Public Event MyEvent As MyEventHander
   
   Public Sub New(warningLevel As Decimal)
      Me.warningLevel = warningLevel
   End Sub

   Public Function Deposit(amount As DecimalAs Decimal
      balance += amount

      RaiseEvent MyEvent(Me, _
                    New MyEventArgs(warningLevel, balance))
      Return balance
   End Function

   Public Function Debit(amount As DecimalAs Decimal
      balance -= amount

      RaiseEvent MyEvent(Me, _
                    New MyEventArgs(warningLevel, balance))
      Console.WriteLine("raised")
      Return balance
   End Function
End Class

        
  
  
raised
raised

 
11. 4. RaiseEvent
11. 4. 1. Raise your own event
w__ww_.__jav__a2s__._c___o___m_ | Contact Us
Copyright 2003 - 08 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.