Unlike arrays, the List collection type resizes dynamically. If you are working with data where you would need to be resizing an array a lot then use a list instead. It is ideal for linear collections that you don’t need to adjust using an index.
Good resources
http://www.dotnetperls.com/list
You need this namespace
using System.Collections.Generic;
Declaring
List<byte> LogEvents = new List<byte>();
//or for a class:
List<LogEventClass> LogEvents = new List<LogEventClass>();
Adding Objects
LogEventClass LogEvent1 = new LogEventClass();
LogEvents.Add(LogEvent1);
Add Array
LogEvents.AddRange(System.Text.Encoding.UTF8.GetBytes(NameText));
Removing Objects
Find the object index then
LogEvents.RemoveAt(Index);
There is also RemoveRange or just Remove where you specify an exact match for it to find and remove.
Total Number Of Objects In A List
for (Index = 0; Index < LogEvents.Count; Index++)
{
Reading A List Item
Use an index as with an array.
SomeVariable = LogEvents[Index];
Working Through A List
foreach (LogEventClass LogEvent in LogEvents)
{
}
Does List contain a value?
if (MyList.Contains(123))
{
}
Clear A List
LogEvents.Clear();
Convert List To An Array
Use .ToArray();
Copy An Array To A List
List<LogEventClass> LogEvents = new List<LogEventClass>(SomeArray);
Feel free to comment if you can add help to this page or point out issues and solutions you have found. I do not provide support on this site, if you need help with a problem head over to stack overflow.