Einen eigenen Typ für das Array brauchst du nicht, ab 2.0 kannst du einfach eine generische Liste benutzen (sonst musst du eben mit Typecasts leben).
Code:
struct MyStruct
{
int one;
double two;
public int One {
get {
[...]
}
List<MyStruct> myList = new List<MyStruct>();