Estoy buscando algo similar a List<T>
, que me permitiría tener múltiples T
. Por ejemplo: List<TabItem, DataGrid, int, string, ...> = new List<TabItem, DataGrid, int, string, ...>()
.Múltiples objetos en la lista, C#
Respuesta
Si está utilizando .NET 4, usted podría tener un List<Tuple<T1, T2, ...>>
De lo contrario, su opción es poner en práctica su propio tipo .
Tienes esto en que yo estaba escribiendo mi responder. –
No necesita List
Crear una clase que define la estructura de datos, y luego hacer
var list = new List<MyClass>();
estructura sería mejor que la clase. – Harsha
@Harsha: si va a hacer esta declaración, al menos denos una razón por la cual. – AMissico
hola, aquí está el enlace que dice que las estructuras son mejores que las clases, pero solo cuando contienen pocos datos. Aquí está el enlace: http://social.msdn.microsoft.com/forums/en-US/Vsexpressvb/thread/6923cbe6-12b7-4e97-a4f5-3d9ebdfc75f2 – Harsha
Normalmente solo tendrías List<MyClass>
donde MyClass
tenía todos esos otros como miembros.
Si puede tener cualquier tipo antiguo, entonces necesita usar una ArrayList.
Si sabe de antemano lo que tendrá allí, entonces debe crear su propia estructura o utilizar una Tupla.
Parece que está buscando List<object>
?
Tuplas son las mejores si está utilizando .net 4.0. Pero si está trabajando 3.5 o menos, la matriz de objeto multidimensional es buena. Aquí está el código. He agregado 3 tipos diferentes en una matriz de objetos y presioné el mismo para listar. Puede que no sea la mejor solución para su pregunta, se puede lograr con la matriz y la lista de objetos. Eche un vistazo al código.
class Program
{
static void Main(string[] args)
{
object[,] OneObject = new object[1,3]{ {"C Sharp",4,3.5 }};
List<object> MyList = new List<object>();
MyList.Add(OneObject);
object[,] addObject = new object[1,3]{{"Java",1,1.1}};
MyList.Add(addObject);
foreach(object SingleObject in MyList)
{
object[,] MyObject = (object[,])SingleObject;
Console.WriteLine("{0},{1},{2}", MyObject[0, 0], MyObject[0, 1], MyObject[0, 2]);
}
Console.Read();
}
}
En lugar de intentar en C# 4, puede dar una oportunidad a la versión anterior.
Parece que no necesita una colección fuertemente tipada aquí, en ese caso ArrayList es la mejor opción.
- 1. Downcasting una lista de objetos en C#
- 2. Ordenando una lista de objetos en C#
- 3. C# Ranking de objetos, múltiples criterios
- 4. Eliminar objetos duplicados en una lista (C#)
- 5. Cómo recuperar Objetos de la lista de arrays en C#
- 6. múltiples parámetros en la lista
- 7. C# - tipos genéricos múltiples en una sola lista
- 8. Ordenar lista de objetos por propiedades C#
- 9. convertir JSON para C# lista de objetos
- 10. C# combobox vinculante a la lista de objetos
- 11. Eliminar múltiples objetos en django
- 12. Iterar la lista de objetos en Ibatis
- 13. ¿Cómo pasar una lista de objetos de C++ a C#?
- 14. Almacenar una lista de objetos arbitrarios en C++
- 15. extraer nombres de objetos de la lista
- 16. convertir la lista de objetos a la lista de interfaces
- 17. JSTL iterar sobre la lista de objetos
- 18. Lista de objetos en httpcontext.current.cache
- 19. Objective-C NSMutableArray - bucle foreach con objetos de múltiples clases
- 20. Imprimir una lista de objetos
- 21. elemento de la lista contiene objetos de otra lista
- 22. ¿Cómo crear múltiples objetos en el fondo?
- 23. string.join en una lista de objetos
- 24. R: convertir elementos de la lista en objetos
- 25. lista de filtrado usando múltiples clases/interfaces
- 26. Eliminar múltiples objetos con rm()
- 27. Pass lista de objetos en la lista de argumentos XSLT y acceder a ella en XSL en C#
- 28. Almacenar objetos de trazado en una lista
- 29. Filtrar una lista de objetos mediante la comparación con otra lista de los diferentes objetos
- 30. Devolución de objetos en C++
¿Desea una Lista genérica que pueda almacenar cualquiera de esos tipos ... o desea una Lista genérica que pueda almacenar una agrupación de esos tipos (es decir, cada elemento es un TabItem asociado, DataGrid, int, cadena , etc.)? –
e idealmente ... ¿cómo usarías o consumirías esta lista? –