Mega Code Archive

 
Categories / VB.Net Tutorial / Collections
 

Extends CollectionBase to create custom Collection

Imports System.Collections Imports System.Collections.Generic Imports System.Collections.Specialized public class Test       public Shared Sub Main         Dim emp_list As New EmployeeCollection         emp_list.Add(New Employee("A", "A"))         emp_list.Add(New Employee("B", "B"))         emp_list.Add(New Employee("C", "C"))         emp_list.Add(New Employee("D", "D"))         emp_list.Add(New Employee("E", "E"))         For Each emp As Employee In emp_list             Console.WriteLine(emp.ToString)         Next emp    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 EmployeeCollection     Inherits CollectionBase     Public Sub Add(ByVal value As Employee)         List.Add(value)     End Sub     Public Function Contains(ByVal value As Employee) As Boolean         Return List.Contains(value)     End Function     Public Function IndexOf(ByVal value As Employee) As Integer         Return List.IndexOf(value)     End Function     Public Sub Insert(ByVal index As Integer, ByVal value As Employee)         List.Insert(index, value)     End Sub     Default Public ReadOnly Property Item(ByVal index As Integer) As Employee         Get             Return DirectCast(List.Item(index), Employee)         End Get     End Property     Public Sub Remove(ByVal value As Employee)         List.Remove(value)     End Sub End Class A A B B C C D D E E