Hi Guys. Im really stuck on this at the moment.

I want to create a function that deletes some specific data that I have entered. The following C# code creates an ArrayList. It then adds a number of “BoxesOfWidgets” to the ArrayList, adding Widgets within each box. I can use VB to create the function, it does not have to be in C#.

Code:
using System;
using System.Collections.Generic;
using System.Text;
using System.Collections;
namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            ArrayList colBoxesOfWidgets = new ArrayList();

            colBoxesOfWidgets.Add(new BoxOfWidgets("Cardboard"));
            ((BoxOfWidgets)colBoxesOfWidgets[0]).colWidgets.Add(new Widget("The blue widget", 12));
            ((BoxOfWidgets)colBoxesOfWidgets[0]).colWidgets.Add(new Widget("The red widget", 15));
            ((BoxOfWidgets)colBoxesOfWidgets[0]).colWidgets.Add(new Widget("The silver widget", 6));
            ((BoxOfWidgets)colBoxesOfWidgets[0]).colWidgets.Add(new Widget("The green widget", 52));

            colBoxesOfWidgets.Add(new BoxOfWidgets("Metal"));
            ((BoxOfWidgets)colBoxesOfWidgets[1]).colWidgets.Add(new Widget("The gold widget", 9));
            ((BoxOfWidgets)colBoxesOfWidgets[1]).colWidgets.Add(new Widget("The orange widget", 115));
            ((BoxOfWidgets)colBoxesOfWidgets[1]).colWidgets.Add(new Widget("The pink widget", 1));

            colBoxesOfWidgets.Add(new BoxOfWidgets("Metal"));
            ((BoxOfWidgets)colBoxesOfWidgets[2]).colWidgets.Add(new Widget("The grey widget", 12));
            ((BoxOfWidgets)colBoxesOfWidgets[2]).colWidgets.Add(new Widget("The black widget", 15));
            ((BoxOfWidgets)colBoxesOfWidgets[2]).colWidgets.Add(new Widget("The white widget", 19));
            ((BoxOfWidgets)colBoxesOfWidgets[2]).colWidgets.Add(new Widget("The brown widget", 60));
            ((BoxOfWidgets)colBoxesOfWidgets[2]).colWidgets.Add(new Widget("The peach widget", 16));


            GetRidOfTheSmallWidgets(colBoxesOfWidgets);
        }


        public ArrayList GetRidOfTheSmallWidgets(ArrayList colBoxesOfWidgets){

            //Place code here
            //It should remove all widgets that have lengths lower than 20.

            return colBoxesOfWidgets;

        }
    }

    class BoxOfWidgets
    {
        public string boxType;
        public ArrayList colWidgets;

        public BoxOfWidgets(string newBoxType)
        {
            boxType = newBoxType;
            colWidgets = new ArrayList();
        }
    }

    class Widget
    {
        public string name;
        public float length;

        public Widget(string newName, float newLength)
        {
            this.name = newName;
            this.length = newLength;
        }
    }
As you can see I need to get rid of all of the widgets with lengths less than 20. I need a method to search through the ArrayList of boxes, and remove the small widgets from them.

Please help! Anything will be really appreciated!