¿IEnumerable o ObservableCollection como getter en proyecto WPF?
Tengo una colección con algunos elementos.
public List
Y necesito mostrar parte de esta colección en DataGrid o ListView.
public IEnumerable<t> ParteDeColección => Colección.Where(item => item.CampoAlguno == AlgúnValor);
public int AlgúnValor { get; set; }
<datagrid itemssource="{Binding ParteDeColección}"></datagrid>
ParteDeColección puede cambiar.
Sé que enlazar a una colección que no implementa INotifyPropertyChanged puede crear fugas de memoria.
¿Necesito convertir ParteDeColección a ObservableCollection como esto:
public ObservableCollection
o usar IEnumerable?
davy.ai
Deberías usar
IEnumerable
para tuPartOfCollection
.ObservableCollection
implementa la interfazINotifyPropertyChanged
, la cual se usa para notificar a la GUI cuando la colección cambie. Dado quePartOfCollection
es un subconjunto deCollection
, no cambiará cuando lo hagaCollection
, así que no hay necesidad de usarObservableCollection
.