In my case, ListEx still is completely generic. I just like to redefine most of system classes I use in case I need to extend theme later. I KNOW I shouldn't put something specific into something generic, that's why ListEx is only but this more then List:

Code:
Public Sub New()
  ' Empty constructor.
End Sub

Public Sub New(ByVal oFirstItem As T)
  Me.Add(oFirstItem)
End Sub
This is for the purpose of creating an object of ListEx "on the fly" (e.g.: for a parameter), where you only need one item quickly.

I've heard about extensions, but didn't find the time to dig more into theme. Perhaps another time.

Anyhow, a little bit off topic...

I still don't think what I've done (and compiler let me) is valid. Type is a type, except in case of interfaces.

Quote Originally Posted by techgnome View Post

Is there any reason you just didn't do it like this:?

Code:
Private _oFields As New ListEx(Of FieldStruct)
No reason really. Just a VB6 legacy