2016-04-06 5 views
-1

Windows-10 UWP C#UWP Raise ObservableCollection Collection

Ich habe eine Klasse für Listview von MSDN Beispiel Gruppierung:

public class GroupInfoList : List<object> 
{ 
    public object Key { get; set; } 
} 

Auch habe ich gruppiert Sammlung, die zu CollectionViewSource binded und ListView:

ObservableCollection<GroupInfoList> TransactionsCollection 
            = new ObservableCollection<GroupInfoList>(); 

Wenn ich Elemente aus der Sammlung hinzufüge oder entferne passiert nichts. Das CollectionChanged Event wird nicht ausgelöst.

löschen Beispiel:

foreach (var x in TransactionsCollection) 
     { 
      if (x.Key.ToString() == item.displayGroupName) 
      { 
       x.Remove(x.Find(i => ((Transaction)i).Id == item.Id)); 
       return; 
      } 
     } 

Wie ich CollectionChanged Ereignis nennen kann?

+0

Sie sind nicht etwas von Ihrem 'ObservableCollection' entfernen, werden Sie die Dinge aus den' GroupInfoList' die in dieser beobachtbaren Sammlung entfernen. –

+0

@PieterWitvoet, Ja, Sie haben Recht. Aber wie kann ich 'ObservableCollection' Changed Event aufrufen, wenn ich Objekte aus' GroupInfoList' lösche oder dort neue Objekte hinzufüge? – SYL

+0

Implementieren Sie INotifyPropertyChanged für die GroupInfoList-Klasse. Sie werden benachrichtigt, wenn das Element geändert wird, oder GroupInfoList als ObservableCollection setzen – Archana

Antwort

1

Dieser Code funktioniert:

public class GroupInfoList : ObservableCollection<object> 
{ 
    public object Key { get; set; } 
}