private async void Image_DataContextChanged(FrameworkElement sender, DataContextChangedEventArgs args) { var page = args.NewValue as MetaPages; if (sender is Panel pl) { if (pl.FindName("img") is Image img) { img.Source = null; if (pl.FindName("pro") is ProgressRing pro) { ProgressBarVisualHelper.SetYFHelperVisibility(pro, true); try { using (var stream = await Data.TmpData.CurrentAuth.Tokens.SendRequestAsync(Pixeez.MethodType.GET, page.ImageUrls.Original ?? page.ImageUrls.Large ?? page.ImageUrls.Medium)) { var bitmap = new Windows.UI.Xaml.Media.Imaging.BitmapImage(); await bitmap.SetSourceAsync((await stream.GetResponseStreamAsync()).AsRandomAccessStream()); img.Source = bitmap; } } catch { new Controls.MyToast("有图片加载失败").Show(); } finally { ProgressBarVisualHelper.SetYFHelperVisibility(pro, false); } } } else { //RoutedEventHandler reh= (se, ee) => //{ // Image_DataContextChanged(sender, args); //}; //pl.Loaded += reh; } } }
private async void Button_Click(object sender, RoutedEventArgs e) { pwdbox.IsEnabled = false; unlockbtn.IsEnabled = false; ProgressBarVisualHelper.SetYFHelperVisibilityForBool(ring, true); try { TmpData.Password = pwdbox.Password; await TmpData.LoadKeeperAsync(); this.Frame.Navigate(typeof(MainPage)); } catch { await new MessageDialog(TmpData.loader.GetString("passwordnotok")).ShowAsync(); } finally { ProgressBarVisualHelper.SetYFHelperVisibilityForBool(ring, false); unlockbtn.IsEnabled = true; pwdbox.IsEnabled = true; } }