VB.Net Tutorial/Collections/ListDictionary — различия между версиями
Admin (обсуждение | вклад) м (1 версия) |
|
(нет различий)
|
Текущая версия на 12:53, 26 мая 2010
Extends ListDictionary to create custom Collection
Imports System.Collections
Imports System.Collections.Generic
Imports System.Collections.Specialized
public class Test
public Shared Sub Main
Dim dict As New EmployeeListDictionary
dict.Add("123-45-6789", New Employee("A", "A"))
dict.Add("111-22-3333", New Employee("B", "B"))
dict.Add("365-76-5476", New Employee("C", "C"))
dict.Add("832-77-6847", New Employee("D", "D"))
Dim emp As Employee = dict.Item("365-76-5476")
Console.WriteLine(emp.ToString)
End Sub
End class
Public Class Employee
Private m_FirstName As String
Private m_LastName As String
Public Sub New(ByVal first_name As String, ByVal last_name As String)
m_FirstName = first_name
m_LastName = last_name
End Sub
Public Overrides Function ToString() As String
Return m_FirstName & " " & m_LastName
End Function
End Class
Public Class EmployeeListDictionary
Inherits ListDictionary
Public Shadows Sub Add(ByVal new_key As String, ByVal new_employee As Employee)
MyBase.Add(new_key, new_employee)
End Sub
Default Public Shadows Property Item(ByVal key As String) As Employee
Get
Return DirectCast(MyBase.Item(key), Employee)
End Get
Set(ByVal Value As Employee)
MyBase.Item(key) = Value
End Set
End Property
Public Shadows Function Contains(ByVal key As String) As Boolean
Return MyBase.Contains(key)
End Function
Public Shadows Sub Remove(ByVal key As String)
MyBase.Remove(key)
End Sub
End Class
C C