Tengo una subclase de List<Location>
llamada LocationList
. Esta es una manera conveniente para nosotros agregamos otras propiedades (como IsExpanded
y tal que podemos utilizar en la interfaz de usuario. Bastante bien. Pero ahora, queremos que cada lugar para estar al tanto de su matriz. Como tal, tenemos que ser notificado cuando algo que se añade a LocationList, pero no se puede anular Add
y Remove
. si bien podemos utilizar ObservableCollection, eso es más de un Vista/ViewModel construir. se trata de los datos del modelo puros.¿Cómo puedo detectar las adiciones a una lista genérica en C# 4.0?
seguro de que podríamos establecer manualmente el padre al añadir a la colección, pero odio la lógica no automatizada así porque no hay nada para aplicar correctamente su conjunto. Dejar que la colección (bueno, la Lista) diga automáticamente 'Hola ... te están agregando, así que estableceré tu padres a la clase que es mi dueño ". es lo que busco.
Mi idea es que en lugar de subclase List<Location>
crear sólo una clase en lugar recta que utiliza una List<Location>
internamente, y luego simplemente me puedo exponer mi propia Agregar/Quitar métodos y manejar las adaptaciones de 'padre' en ese país. Sin embargo, al hacerlo se rompe la posibilidad de enumerar sobre la colección interna ya que está adentro.
Dicho esto, ¿hay alguna manera ya sea escuchar a cambios List<Location>
, o al menos delegar su interfaz IEnumerable
del objeto envuelto a su envoltura?
Esto parece ser el más fácil de implementar ... simplemente cambiando la Lista a la Colección que no agrega todos los gastos generales de ObservableCollection aunque se pierde un poco de rendimiento en comparación con la Lista . Aún así, eso es más que suficiente para que puedas obtener el voto. ¡Gracias! –
MarqueIV