Implements IEnumerable : IEnumerable « Data Structure « VB.Net

Home
VB.Net
1.2D
2.Application
3.Class
4.Data Structure
5.Data Types
6.Database ADO.net
7.Date Time
8.Development
9.Event
10.File Directory
11.Generics
12.GUI
13.Internationalization I18N
14.Language Basics
15.LINQ
16.Network Remote
17.Reflection
18.Security
19.Thread
20.Windows Presentation Foundation
21.Windows System
22.XML
23.XML LINQ
VB.Net Tutorial
VB.Net by API
VB.Net » Data Structure » IEnumerableScreenshots 
Implements IEnumerable
Implements IEnumerable
 
Imports System
Imports System.Collections

Public Class MainClass
    
    Shared Sub Main()
       Dim currentListBox As New _
           ListBoxTest("Hello""World")

       'add a few strings
       currentListBox.Add("o")
       currentListBox.Add("s")
       currentListBox.Add("n")
       currentListBox.Add("t")

       'test the access
       Dim subst As String = "Universe"
       currentListBox(1= subst

       'access all the strings
       Dim As String
       For Each s In currentListBox
           Console.WriteLine("Value: {0}", s)
       Next

   End Sub

End Class

     Public Class ListBoxTest : Implements IEnumerable
         Private strings(  ) As String
         Private ctr As Integer = 0

         Private Class ListBoxEnumerator
             Implements IEnumerator

             Private currentListBox As ListBoxTest
             Private index As Integer

             Public Sub New(ByVal currentListBox As ListBoxTest)
                 Me.currentListBox = currentListBox
                 index = -1
             End Sub

             Public Function MoveNext(  ) As Boolean _
               Implements IEnumerator.MoveNext
                 index += 1
                 If index >= currentListBox.strings.Length Then
                     Return False
                 Else
                     Return True
                 End If
             End Function

             Public Sub Reset(  ) _
               Implements IEnumerator.Reset
                 index = -1
             End Sub

             Public ReadOnly Property Current(  ) As Object _
             Implements IEnumerator.Current
                 Get
                     Return currentListBox(index)
                 End Get
             End Property
         End Class 

         Public Function GetEnumerator(  ) As IEnumerator _
         Implements IEnumerable.GetEnumerator
             Return New ListBoxEnumerator(Me)
         End Function

         Public Sub New_
           ByVal ParamArray initialStrings(  ) As String)
             ReDim strings(7)

             Dim As String
             For Each s In initialStrings
                 strings(ctr= s
                 ctr += 1
             Next
         End Sub

         Public Sub Add(ByVal theString As String)
             strings(ctr= theString
             ctr += 1
         End Sub

         Default Public Property Item_
           ByVal index As IntegerAs String
             Get
                 If index < Or index >= strings.Length Then
                     ' handle bad index
                     Exit Property
                 End If
                 Return strings(index)
             End Get
             Set(ByVal Value As String)
                 strings(index= Value
             End Set
         End Property

         Public Function GetNumEntries(  ) As Integer
             Return ctr
         End Function

     End Class

           
         
  
Related examples in the same category
1.IEnumerable: array like accessIEnumerable: array like access
2.IEnumerable Interface exposes the enumerator, which supports a simple iteration over a non-generic collection.
w__ww.___j_av__a___2___s.__c_o___m_ | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.