예제 #1
0
        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
            {
            }
        }
예제 #2
0
        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
            }
        }