MultiKey Properties : Property « Class Module « VB.Net Tutorial

Home
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.LINQ
13.Stream File
14.GUI
15.GUI Applications
16.Windows Presentation Foundation
17.2D Graphics
18.I18N Internationlization
19.Reflection
20.Regular Expressions
21.Security
22.Socket Network
23.Thread
24.Windows
25.XML
26.Database ADO.net
27.Design Patterns
VB.Net
VB.Net by API
VB.Net Tutorial » Class Module » Property 
6.38.9.MultiKey Properties
Imports System
Imports System.Collections

Class Employee
  Private MName As String
  Private MWage As Double

  Public Sub New(ByVal Name As String, ByVal Wage As Double)
    MName = Name
    MWage = Wage
  End Sub

  Public Property Name() As String
    Get
      Return MName
    End Get

    Set(ByVal Value As String)
      MName = Value
    End Set
  End Property

  Public ReadOnly Property Wage() As Double
    Get
      Return MWage
    End Get
  End Property

  Public Sub PayRaise(ByVal Amount As Double)
    MWage += Amount
  End Sub

  Public Overrides Function ToString() As String
    Return MName & " " & MWage
  End Function
End Class

Class EmployeeList
  Private MEmployees As Hashtable

  Public Sub New()
    MEmployees = New Hashtable()
  End Sub

  Public Property Employee(ByVal Location As String, ByVal ID As IntegerAs Employee
    Get
      Dim Key As String = Location + ID.ToString()
      Return MEmployees(Key)
    End Get

    Set(ByVal Value As Employee)
      Dim Key As String = Location + ID.ToString()
      MEmployees(Key= Value
    End Set
  End Property
End Class

Module Test
  Sub Main()
    Dim EmployeeList As New EmployeeList()

    EmployeeList.Employee("A"1= New Employee("S"2)
    EmployeeList.Employee("B"2= New Employee("C"3)
    EmployeeList.Employee("C"3= New Employee("B"1)
    EmployeeList.Employee("D"4= New Employee("A"1)

    Dim Who As Employee
    Who = EmployeeList.Employee("Boston"200)
    Console.WriteLine("{0}", Who)

    Who = EmployeeList.Employee("Geneva"200)
    Console.WriteLine("{0}", Who)
  End Sub
End Module
6.38.Property
6.38.1.Define and use a Property
6.38.2.Default Property
6.38.3.Two properties
6.38.4.Do calculation in Property getter
6.38.5.Properties with Getter and Setter
6.38.6.Shared variable and Shared Property
6.38.7.Class with a property that performs validation
6.38.8.ReadOnly property
6.38.9.MultiKey Properties
6.38.10.Overloaded Properties
6.38.11.Shared Properties
6.38.12.Single Indexed Property
6.38.13.Loop through two dimensional array with GetUpperBound and GetLowerBound
6.38.14.Use Property to set private data
6.38.15.Do data check in property set
6.38.16.Convert data type in property set
6.38.17.Throw Exception in Property setting
6.38.18.Change value in Property getter
6.38.19.Friend Property
6.38.20.Readable and Writable
6.38.21.Person with FirstName and LastName Property
6.38.22.Define a class with one property and retrieves the name and type of the property
www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.