async Task ExecuteRefreshCommand() { if (IsBusy) { return; } IsBusy = true; feedListViewItemSource.Clear(); var ClearedList = feedListViewItemSource; var GetPosts = originalMessages; if (ClearedList.Count() == 0) { foreach (var item in GetPosts) { ItemsCurrentlyDisplayedInList.Add(item); } IsBusy = false; } else { } }
public async Task ExecuteSearch(string text) { var messagesToDisplay = originalMessages.Where( message => message.PostText.ToLower() .Contains(text.ToLower())); if (messagesToDisplay.Count() == 0) { ItemsCurrentlyDisplayedInList.Clear(); } else if (messagesToDisplay.Count() > 0) { var messagesToAdd = messagesToDisplay.Except(ItemsCurrentlyDisplayedInList).ToList(); foreach (var message in messagesToAdd) { ItemsCurrentlyDisplayedInList.Add(message); } var messagesToRemove = ItemsCurrentlyDisplayedInList.Except(messagesToDisplay).ToList(); foreach (var message in messagesToRemove) { ItemsCurrentlyDisplayedInList.Remove(message); } } else if (string.IsNullOrWhiteSpace(text)) { var messagesToAdd = originalMessages.Except(ItemsCurrentlyDisplayedInList).ToList(); foreach (var item in messagesToAdd) { ItemsCurrentlyDisplayedInList.Add(item); } } else { //Change UI Label to show that no records are found } }