private async void ScrollViewer_ViewChanged(object sender, ScrollViewerViewChangedEventArgs e)
        {
            var sv    = sender as ScrollViewer;
            int index = LostAndFoundPagePivot.SelectedIndex;

            if (!e.IsIntermediate)
            {
                if (sv.VerticalOffset >= sv.ScrollableHeight - 200)
                {
                    if (VM[index].next_page_url == null)
                    {
                        IsProgressRingActive[index] = false;            //已请求所有
                    }
                    else
                    {
                        LostAndFoundPageViewModel temp = await Model.LoadItems(VM[index].next_page_url);

                        foreach (LFItem i in temp.data)
                        {
                            VM[index].data.Add(i);
                        }
                        VM[index].next_page_url = temp.next_page_url;
                    }
                }
            }
        }
示例#2
0
        private async void ComboBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            if (isComboxLoaded)
            {
                if (combox.SelectedIndex == 0)
                {
                    BaseUrl = "http://hongyan.cqupt.edu.cn/laf/api/view/found/";
                }
                else
                {
                    BaseUrl = "http://hongyan.cqupt.edu.cn/laf/api/view/lost/";
                }
                for (int i = 0; i < 8; i++)
                {
                    VM[i].data.Clear();
                    IsItemLoaded[i] = false;
                }
                int index = LostAndFoundPagePivot.SelectedIndex;
                LostAndFoundPageViewModel temp = await Model.LoadItems(BaseUrl, index);

                foreach (LFItem i in temp.data)
                {
                    VM[index].data.Add(i);
                }
                VM[index].next_page_url = temp.next_page_url;
                if (VM[index].next_page_url == null)
                {
                    IsProgressRingActive[index] = false;
                }
            }
        }
示例#3
0
        public async Task <LostAndFoundPageViewModel> LoadItems(string uri, int cat = 0)
        {
            LostAndFoundPageViewModel LFPVM = new LostAndFoundPageViewModel();
            string content;

            content = await GetJson(uri + catalog[cat]);

            if (content != "NetworkError")
            {
                if (content == "")
                {
                    return(LFPVM);
                }
                LFPVM = JsonToObject(content);
                foreach (LFItem i in LFPVM.data)
                {
                    if (i.wx_avatar == "")
                    {
                        continue;
                    }
                    else if (i.wx_avatar[0] == '/')
                    {
                        i.wx_avatar = "http://hongyan.cqupt.edu.cn" + i.wx_avatar;
                    }
                    i.HeadImg = new BitmapImage(new Uri(i.wx_avatar));
                }
            }
            return(LFPVM);
        }
 public LostAndFoundPage()
 {
     for (byte i = 0; i < 8; i++)
     {
         IsProgressRingActive.Add(true);
         VM[i] = new LostAndFoundPageViewModel();
     }
     this.InitializeComponent();
     NavigationCacheMode = NavigationCacheMode.Enabled;      //页面缓存,页面返回时仅调用OnNavigatedTo方法
 }
        private async void LostAndFoundPageRefreshAppBarButton_Click(object sender, RoutedEventArgs e)
        {
            int index = LostAndFoundPagePivot.SelectedIndex;

            if (IsItemLoaded[index])
            {
                IsProgressRingActive[index] = true;
                VM[index].data.Clear();
                LostAndFoundPageViewModel temp = await Model.LoadItems(BaseUrl, index);

                foreach (LFItem i in temp.data)
                {
                    VM[index].data.Add(i);
                }
                VM[index].next_page_url = temp.next_page_url;
                if (VM[index].next_page_url == null)
                {
                    IsProgressRingActive[index] = false;
                }
            }
        }
        private async void LostAndFoundPagePivot_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            int index = LostAndFoundPagePivot.SelectedIndex;

            if (!IsItemLoaded[index])
            {
                LostAndFoundPageViewModel temp = await Model.LoadItems(BaseUrl, index);

                foreach (LFItem i in temp.data)
                {
                    VM[index].data.Add(i);
                }
                VM[index].next_page_url = temp.next_page_url;
                if (VM[index].next_page_url == null)
                {
                    IsProgressRingActive[index] = false;
                }
            }

            IsItemLoaded[index] = true;
        }