Represents a generic collection of objects.
Syntax
Type Parameters
- T
- A generic Type parameter.
Example
Sample to test the RasterCollection class.
Visual Basic |
Copy Code |
Public Sub RasterCollectionExample() Dim rc As RasterCollection(Of String) = New RasterCollection(Of String)() AddHandler rc.ItemAdded, AddressOf rasterCollection_ItemAdded AddHandler rc.ItemRemoved, AddressOf rasterCollection_ItemRemoved
Dim item1 As String = "item 1" Dim item2 As String = "item 2" Dim item3 As String = "item 3"
rc.Add(item1) rc.Add(item2) rc.Add(item3)
Dim newItem2 As String = "new item 2" rc.Insert(1, newItem2)
Debug.Assert(rc.Contains(newItem2))
rc.Remove(newItem2) Debug.Assert((Not rc.Contains(newItem2)))
rc.RemoveAt(rc.Count - 1) Debug.Assert(rc.Count = 2)
rc.SendToBack(item1, True) Debug.Assert(rc.IndexOf(item1) = rc.Count - 1)
rc.BringToFront(item1, True) Debug.Assert(rc.IndexOf(item1) = 0)
Dim items As String() = New String(rc.Count - 1) {} rc.CopyTo(items, 0) Debug.Assert(items.Length = rc.Count) Dim i As Integer = 0 Do While i < items.Length Debug.Assert(items(i) = rc(i)) i += 1 Loop
For Each str As String In rc Console.WriteLine(str) Next str
rc.Clear() Debug.Assert(rc.Count = 0) End Sub
Private Sub rasterCollection_ItemAdded(ByVal sender As System.Object, ByVal e As RasterCollectionEventArgs(Of String)) Console.WriteLine("The Item ((" & e.Item.ToString() & ")) Has been added to the collection") End Sub
Private Sub rasterCollection_ItemRemoved(ByVal sender As System.Object, ByVal e As RasterCollectionEventArgs(Of String)) Console.WriteLine("The Item ((" & e.Item.ToString() & ")) Has been removed from the collection") End Sub |
C# |
Copy Code |
public void RasterCollectionExample() { RasterCollection<string> rc = new RasterCollection<string>(); rc.ItemAdded += new EventHandler<RasterCollectionEventArgs<string>>(rasterCollection_ItemAdded); rc.ItemRemoved += new EventHandler<RasterCollectionEventArgs<string>>(rasterCollection_ItemRemoved); // add a few items string item1 = "item 1"; string item2 = "item 2"; string item3 = "item 3"; rc.Add(item1); rc.Add(item2); rc.Add(item3); // insert an item string newItem2 = "new item 2"; rc.Insert(1, newItem2); // check if collection contains this new item Debug.Assert(rc.Contains(newItem2)); // remove this new item rc.Remove(newItem2); Debug.Assert(!rc.Contains(newItem2)); // remove the last item rc.RemoveAt(rc.Count - 1); Debug.Assert(rc.Count == 2); // send the first item to the end of the collection rc.SendToBack(item1, true); Debug.Assert(rc.IndexOf(item1) == rc.Count - 1); // bring it back to the front rc.BringToFront(item1, true); Debug.Assert(rc.IndexOf(item1) == 0); // copy to an array string[] items = new string[rc.Count]; rc.CopyTo(items, 0); Debug.Assert(items.Length == rc.Count); for(int i = 0; i < items.Length; i++) Debug.Assert(items[i] == rc[i]); // loop throw the items and show them foreach(string str in rc) Console.WriteLine(str); // clean the collection rc.Clear(); Debug.Assert(rc.Count == 0); } private void rasterCollection_ItemAdded(System.Object sender, RasterCollectionEventArgs<string> e) { Console.WriteLine("The Item ((" + e.Item.ToString() + ")) Has been added to the collection"); } private void rasterCollection_ItemRemoved(System.Object sender, RasterCollectionEventArgs<string> e) { Console.WriteLine("The Item ((" + e.Item.ToString() + ")) Has been removed from the collection"); } |
Remarks
Inheritance Hierarchy
Requirements
Target Platforms: Microsoft .NET Framework 3.0, Windows XP, Windows Server 2003 family, Windows Server 2008 family
See Also