private async void PickWebLogo(object sender, RoutedEventArgs e) { try { FileOpenPicker Picker = new FileOpenPicker { SuggestedStartLocation = PickerLocationId.ComputerFolder, ViewMode = PickerViewMode.List }; Picker.FileTypeFilter.Add(".ico"); Picker.FileTypeFilter.Add(".png"); Picker.FileTypeFilter.Add(".jpg"); Picker.FileTypeFilter.Add(".bmp"); if (await Picker.PickSingleFileAsync() is StorageFile ExecuteFile) { StorageFile FileThumbnail = await ApplicationData.Current.TemporaryFolder.CreateFileAsync("FileThumbnail.png", CreationCollisionOption.ReplaceExisting); if (await ExecuteFile.OpenReadAsync() is IRandomAccessStream LogoStream) { try { BitmapImage Image = new BitmapImage(); Icon.Source = Image; await Image.SetSourceAsync(LogoStream); LogoStream.Seek(0); using (Stream FileStream = await FileThumbnail.OpenStreamForWriteAsync()) { await LogoStream.AsStreamForRead().CopyToAsync(FileStream); } } finally { LogoStream.Dispose(); } } else { Uri PageUri = AppThemeController.Current.Theme == ElementTheme.Dark ? new Uri("ms-appx:///Assets/Page_Solid_White.png") : new Uri("ms-appx:///Assets/Page_Solid_Black.png"); StorageFile PageFile = await StorageFile.GetFileFromApplicationUriAsync(PageUri); using (IRandomAccessStream PageStream = await PageFile.OpenAsync(FileAccessMode.Read)) { BitmapImage Image = new BitmapImage(); Icon.Source = Image; await Image.SetSourceAsync(PageStream); PageStream.Seek(0); using (Stream TransformStream = PageStream.AsStreamForRead()) using (Stream FileStream = await FileThumbnail.OpenStreamForWriteAsync()) { await TransformStream.CopyToAsync(FileStream); } } } ImageFile = FileThumbnail; } } catch (Exception ex) { LogTracer.Log(ex); FailureTips.IsOpen = true; } }