private void CircleStoryPage_Loaded(object sender, RoutedEventArgs e)
 {
     if (IsUsingCachedWhenNavigate())
     {
         return;
     }
     StoryListView.SetRefresh(true);
 }
        private async void RefreshMainList()
        {
            await VM.Refresh();

            StoryListView.SetRefresh(false);
            if (!Config.IsSinglePage)
            {
                DisplayStory();
            }
        }
        private async void LoadMoreStories()
        {
            if (_isLoadComplete || VM.StoryDataList.Count == 0)
            {
                StoryListView.FinishLoadingMore();
                return;
            }

            var preCount = VM.StoryDataList.Count;
            await VM.RefreshStories(true);

            StoryListView.FinishLoadingMore();
            _isLoadComplete = preCount == VM.StoryDataList.Count;
        }
        private void SearchSubscriber(SearchEvent param)
        {
            switch (param.Type)
            {
            case SearchType.Circle:
                if (!(Frame.Content is CircleStoryPage))
                {
                    return;
                }

                var circle = (CircleBase)param.SearchObj;
                if (circle == null)
                {
                    return;
                }

                VM.CircleId = circle.Id;
                StoryListView.SetRefresh(true);
                break;
            }
        }