Mega Code Archive

 
Categories / VB.Net / Data Structure
 

NameObjectCollectionBase BaseGet Method gets value at the specified index of the NameObjectCollectionBase instance

Imports System Imports System.Collections Imports System.Collections.Specialized Public Class MyCollection    Inherits NameObjectCollectionBase    Private _de As New DictionaryEntry()    Default Public ReadOnly Property Item(index As Integer) As DictionaryEntry       Get          _de.Key = Me.BaseGetKey(index)          _de.Value = Me.BaseGet(index)          Return _de       End Get    End Property    Default Public Property Item(key As [String]) As [Object]       Get          Return Me.BaseGet(key)       End Get       Set          Me.BaseSet(key, value)       End Set    End Property    Public Sub New(d As IDictionary)       Dim de As DictionaryEntry       For Each de In  d          Me.BaseAdd(CType(de.Key, [String]), de.Value)       Next de    End Sub  End Class  Public Class SamplesNameObjectCollectionBase    Public Shared Sub Main()       Dim d = New ListDictionary()       d.Add("A", "a")       d.Add("B", "b")       d.Add("P", "p")       Dim myCol As New MyCollection(d)       Console.WriteLine(myCol.Count)       PrintKeysAndValues(myCol)       Console.WriteLine("The key at index 0 is {0}.", myCol(0).Key)       Console.WriteLine("The value at index 0 is {0}.", myCol(0).Value)       Console.WriteLine("The value associated with the key ""green"" is {0}.", myCol("green"))    End Sub 'Main    Public Shared Sub PrintKeysAndValues(myCol As MyCollection)       Dim i As Integer       For i = 0 To myCol.Count - 1          Console.WriteLine("[{0}] : {1}, {2}", i, myCol(i).Key, myCol(i).Value)       Next i    End Sub  End Class