sirve que para generic collection vb.net generics class collections

vb.net - using system.collections.generic para que sirve



VB.NET colección Strong-typed (2)

¿Por qué no usa una List(Of Foo) ... ya está en VB.NET en System.Collections.Generic ? Para usar, simplemente declarar como tal:

Private myList As New List(Of Foo) ''Creates a Foo List'' Private myIntList As New List(Of Integer) ''Creates an Integer List''

Consulte MSDN > List(T) Class (System.Collections.Generic) para obtener más información.

Quiero crear una colección en VB.NET, pero solo quiero que acepte objetos de cierto tipo. Por ejemplo, quiero crear una clase llamada "FooCollection" que actúa como una colección en todos los sentidos, pero solo acepta objetos de tipo "Foo".

Pensé que podría hacer esto usando genéricos, usando la siguiente sintaxis:

Public Class FooCollection(Of type As Foo) Inherits CollectionBase ... End Class

Pero me sale un error cuando lo compilo y digo que "debo implementar un acceso por defecto", por lo que claramente falta algo. No deseo especificar el tipo que acepta cuando instalo. Quiero que el FooCollection sea específico para que solo acepte objetos Foo. Lo he visto hecho en C # con una lista fuerte, así que tal vez todo lo que estoy buscando es la sintaxis de VB.NET.

¡Gracias por tu ayuda!

EDITAR: Gracias por la respuesta. Eso lo haría, pero quería que el classtype se llamara de cierta manera, en realidad logré exactamente lo que estaba buscando con el siguiente código:

Public Class FooCollection Inherits List(Of Foo) End Class


Necesitabas implementar una propiedad predeterminada para la colección como esta:

Default Public Property Item(ByVal Index As Integer) As Foo Get Return CType(List.Item(Index), Foo) End Get Set(ByVal Value As Foo) List.Item(Index) = Value End Set

Terminar propiedad