public Task <Microsoft.UI.Xaml.Controls.IconSource> LoadIconSourceAsync(ImageSource imagesource, CancellationToken cancellationToken = default(CancellationToken)) { Microsoft.UI.Xaml.Controls.IconSource image = null; if (imagesource is FileImageSource filesource) { string file = filesource.File; image = new Microsoft.UI.Xaml.Controls.BitmapIconSource { UriSource = new Uri("ms-appx:///" + file) }; } return(Task.FromResult(image)); }
public Task <Microsoft.UI.Xaml.Controls.IconSource> LoadIconSourceAsync(ImageSource imagesource, CancellationToken cancellationToken = default) { var imageLoader = imagesource as UriImageSource; if (imageLoader?.Uri == null) { return(null); } Microsoft.UI.Xaml.Controls.IconSource image = new Microsoft.UI.Xaml.Controls.BitmapIconSource { UriSource = imageLoader?.Uri }; return(Task.FromResult(image)); }
public void BitmapIconSourceTest() { BitmapIconSource iconSource = null; var uri = new Uri("ms-appx:///Assets/ingredient1.png"); RunOnUIThread.Execute(() => { iconSource = new BitmapIconSource(); // IconSource.Foreground should be null to allow foreground inheritance from // the parent to work. Verify.AreEqual(iconSource.Foreground, null); Log.Comment("Validate the defaults match BitmapIcon."); var icon = new BitmapIcon(); Verify.AreEqual(icon.UriSource, iconSource.UriSource); if (ApiInformation.IsPropertyPresent("Windows.UI.Xaml.Controls.BitmapIcon", "ShowAsMonochrome")) { Verify.AreEqual(icon.ShowAsMonochrome, iconSource.ShowAsMonochrome); } Log.Comment("Validate that you can change the properties."); iconSource.Foreground = new SolidColorBrush(Windows.UI.Colors.Red); iconSource.UriSource = uri; iconSource.ShowAsMonochrome = false; }); IdleSynchronizer.Wait(); RunOnUIThread.Execute(() => { Verify.IsTrue(iconSource.Foreground is SolidColorBrush); Verify.AreEqual(Windows.UI.Colors.Red, (iconSource.Foreground as SolidColorBrush).Color); Verify.AreEqual(uri, iconSource.UriSource); Verify.AreEqual(false, iconSource.ShowAsMonochrome); }); }