You can use the RemoveAt() method of the arraylist to remove an item based on the index. However, remember that the arraylist will change the index values as soon as a value is removed from it.
ArrayList arr = new ArrayList();
arr.Add("a0");
arr.Add("a1");
arr.Add("a2");
arr.Add("a3");
arr.Add("a4");
arr.Add("a5");
arr.RemoveAt(1); //removes the item at index 1 i.e. "a1"
but the new index value of 1 becomes "a2"
so arr.RemoveAt(1); //removes the item at NEW index 1 i.e. "a2"
So, it is rather touch to remove items from an arraylist based on the index value. Intead, you should try using a HashTable which is an arraylist with a key. You can remove an item based on a unique key .... see an example below:
Hashtable hh = new Hashtable();
hh.Add(0,"a0");
hh.Add(1,"a1");
hh.Add(2,"a2");
hh.Remove(0); //removes the item with key value 1 form the hashtable
hh.Remove(2); //removes the item with key value 2 form the hashtable
Hope this helps.
_ash_