Estoy trabajando en la creación de una clase de modelo de vista base. ViewModelBase es una clase abstracta y quiero definir las propiedades que deseo que implementen todos mis otros modelos de vista derivados.MVVM vista de base clase de modelo
Una de las propiedades es un ObservableCollection:
public abstract ObservableCollection<???> Items { get; set; }
Las clases que se derivan de esta clase base tendrán diferentes tipos de artículos definidos (ObservableCollection<Person>
, ObservableCollection<Car>
).
Si configuré el tipo ObservableCollection en object
en ViewModelBase, me exigiría hacer una gran cantidad de fundiciones diferentes en las clases derivadas para que funcione.
¿Es este el enfoque correcto?
Gracias por esto. No puedo creer que me haya olvidado por completo de los genéricos. La razón por la que lo hago de esta manera es porque muchos de mis modelos de vista son prácticamente idénticos, excepto por algunas diferencias menores, así que quería poner las cosas en común en la clase base. – Flack