Как из ArrayList получить System.Collections.Generic.List

Есть следующая переменная:

System.Collections.ArrayList arrayList;

которая содержит элементы типа elemType (Type elemType = какой-то тип).

Необходимо все эти данные загнать в типизированный список System.Collections.Generic.List, т.е. примерно таким образом:

C#Выделить код

1
2
3

System.Collections.Generic.List<Document> list= new System.Collections.Generic.List<Document>();
foreach(Document d in arrayList)
  list.Add(d);

где вместо Document должно быть elemType. Как это сделать?