private async void Parser_StatusDeleted(object sender, DeleteStreamEventArgs e) { // Yes the same id shouldn't be there more than once, but this happens sometimes. // so delete all statuses that match the id. var toDelete = StatusCollection.Where(s => s.Id == e.Id).ToArray(); foreach (var status in toDelete) { await Dispatcher.RunAsync(() => StatusCollection.Remove(status)); } await Cache.RemoveStatus(e.Id); }