NameObjectCollectionBase.BaseClear Method removes all entries from 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 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 'New Public Sub Clear() Me.BaseClear() 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) myCol.Clear() Console.WriteLine(myCol.Count) PrintKeysAndValues(myCol) End Sub 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