Implementar ConvertAll en BindingList

23/09/2008 - 20:56 por Javier Lozano | Informe spam
Saludos Compañeros

Tengo una clase que originalmente heredaba de List<T> y usaba ConvertAll
para convertir los objetos contenidos en la coleccion a otro tipo. Por
necesidad del proyecto, debo heredar ahora de BindingList<T> la cual no
contiene el metodo ConvertAll.

Hay forma de implementar ConvertAll en una clase que derive de
BindingList<T>?

Agradezco de antemanos sus comentarios.

Saludos

Javier Lozano
Lima-Peru

Preguntas similare

Leer las respuestas

#1 Alberto Poblacion
24/09/2008 - 08:14 | Informe spam
"Javier Lozano" wrote in message
news:
Tengo una clase que originalmente heredaba de List<T> y usaba ConvertAll
para convertir los objetos contenidos en la coleccion a otro tipo. Por
necesidad del proyecto, debo heredar ahora de BindingList<T> la cual no
contiene el metodo ConvertAll.

Hay forma de implementar ConvertAll en una clase que derive de
BindingList<T>?



¿Cuál es el problema? No tienes más que añadir una nueva función a tu
clase derivada, y llamarle ConvertAll. Algo parecido a lo siguiente:

public List<TOutput> ConvertAll<TOutput> (Converter<T,TOutput> converter)
{
List<TOutput> lista = new List<TOutput>();
foreach (T item in this.Items)
{
lista.Add(converter(item));
}
return lista;
}
Respuesta Responder a este mensaje
#2 Javier Lozano
24/09/2008 - 17:22 | Informe spam
Si Alberto, era sencillo como eso, pero ya sabes, hay momentos que nos falta
la inspiracion. Nada que una buena copa de vino no pueda resolver,
finalmente la solucion quedo exactamente igual a como la sugieres, con la
diferencia en el codigo que en lugar de usar List<>, usé BindingList<>.

Muchas Gracias

"Alberto Poblacion" wrote
in message news:%
"Javier Lozano" wrote in message
news:
Tengo una clase que originalmente heredaba de List<T> y usaba ConvertAll
para convertir los objetos contenidos en la coleccion a otro tipo. Por
necesidad del proyecto, debo heredar ahora de BindingList<T> la cual no
contiene el metodo ConvertAll.

Hay forma de implementar ConvertAll en una clase que derive de
BindingList<T>?



¿Cuál es el problema? No tienes más que añadir una nueva función a tu
clase derivada, y llamarle ConvertAll. Algo parecido a lo siguiente:

public List<TOutput> ConvertAll<TOutput> (Converter<T,TOutput> converter)
{
List<TOutput> lista = new List<TOutput>();
foreach (T item in this.Items)
{
lista.Add(converter(item));
}
return lista;
}


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida