VB.Net by API/System.Collections/CollectionBase

Материал из VB Эксперт
Перейти к: навигация, поиск

Inherits CollectionBase

  
Imports System
Public Class MainClass
  Shared Sub Main()
        Dim e1 As New Employee("E", 50000)
        Dim e2 As New Employee("S", 60000)
        Dim myEmployees As New Employees()
        myEmployees.Add(e1)
        myEmployees.Add(e2)
        Dim aEmployee As Employee
        For Each aEmployee In myEmployees
            Console.WriteLine(aEmployee.Name)
        Next
  End Sub
End Class

Public Class Employees
    Inherits System.Collections.CollectionBase
    Public Sub Add(ByVal aEmployee As Employee)
        List.Add(aEmployee)
    End Sub
    Public Sub Remove(ByVal index As Integer)
        If index > Count - 1 Or index < 0 Then
            Console.WriteLine("Can"t add this item")
        Else
            List.RemoveAt(index)
        End If
    End Sub
    Default Public ReadOnly Property Item(ByVal index As Integer) As Employee
        Get
            Return CType(List.Item(index), Employee)
        End Get
    End Property
End Class

Public Class Employee
    Private m_Name As String
    Private m_Salary As Decimal
    Public Sub New(ByVal theName As String, ByVal curSalary As Decimal)
        m_Name = theName
        m_Salary = curSalary
    End Sub
    Public ReadOnly Property Name() As String
        Get
            Return m_Name
        End Get
    End Property
    Public ReadOnly Property Salary() As Decimal
        Get
            Return MyClass.m_Salary
        End Get
    End Property
End Class