private async Task GetProductComments() { StaticMethods.ShowLoader(); Task.Factory.StartNew( // tasks allow you to use the lambda syntax to pass wor () => { _listComments = WebService.GetCommentsList(Convert.ToInt32(_product.product_id)); }).ContinueWith(async t => { try { if (_listComments.comments != null) { if (_listComments.comments != null) { lblProductTitle.Text = _listComments.comments[0].product_name; } items = new CommentItemList(_listComments); for (int i = 0; i < items.Items.Count; i++) { if (items.Items[i].user_id == StaticDataModel.userId.ToString()) { _isProductAdmin = false; } else { _isProductAdmin = true; } items.Items[i].isProductAdminn = _isProductAdmin; var height = items.Items[i].comment_reply.Count * 60; if (items.Items[i].comment_reply.Count > 0) { items.Items[i].isVisibleListView = true; items.Items[i].ListViewHeight = height; for (int j = 0; j < items.Items[i].comment_reply.Count; j++) { items.Items[i].comment_reply[j].profile_pic = Constants.ProfilePicUrl + items.Items[i].comment_reply[j].profile_pic; } } else { items.Items[i].isVisibleListView = false; } items.Items[i].product_image = Constants.ImageUrl + items.Items[i].product_image; } flowlistview.FlowItemsSource = items.Items; if (items.Items.Count > 0) { var lastItem = flowlistview.FlowItemsSource.OfType <object>().Last(); flowlistview.ScrollTo(lastItem, ScrollToPosition.End, false); } } } catch (Exception ex) { } finally { StaticMethods.DismissLoader(); } }, TaskScheduler.FromCurrentSynchronizationContext() ); }