Entradas

Mostrando entradas de agosto, 2018

Colecciones en C# - Implementación IList e IBindingList

Imagen
Les comparto la implementación que hice para las interfaces IList e IBindingList. La documentación de las interfaces se encuentra en el portal de MS; por lo que me enfocaré en los puntos en los que creo puede haber más interés. Implementación de IList El código está basado en la clase CollectionBase (https://referencesource.microsoft.com/#mscorlib/system/collections/collectionbase.cs,4e201fdc07f5f637) con algunas pequeñas modificaciones como por ejemplo la posibilidad de cancelar las acciones de los métodos: - Insert - Remove - Clear - Validate Cabe aclarar que falta la implementación de los eventos de los métodos mencionados; estos métodos se encuentran como métodos virtuales con el prefijo "On" algo usual para la llamada a eventos desde esos métodos. Ordenar por más de una propiedad La variable dentro de la clase de la colección que contiene la lista de objetos es de tipo ArrayList la cual contiene el método Sort al cual se le puede pasar un objeto que ...