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; } } } }
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; } } }
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; }