Имам серия от изображения, съхранявани онлайн, които азОпитайте се да достигнете програмно в моя Универсален Windows Phone App. Има ли начин да разберете дали изображението съществува за избрания параметър и ако не е, използвайте заместител на изображението?
var img = new BitmapImage(new Uri("url?ID_IMMAGINE=" + idImg1 + "&HEIGHT=100", UriKind.Absolute))
така получавам образа.
Отговори:
2 за отговор № 1Можете да прикачите манипулатор за ImageFailed
събитие за задаване на резервна стойност за URI:
var defaultImageUri = new Uri("ms-appx:///Assets/DefaultImage.png");
var bitmap = new BitmapImage();
bitmap.ImageFailed += (s, e) => bitmap.UriSource = defaultImageUri;
bitmap.UriSource = new Uri(...);
0 за отговор № 2
Не можете да използвате async за конвертор. типът на връщане на асинхронния метод трябва да бъде void,Task,Task<T>
, Това не може да се даде на Convert метод
try
{
var img = new BitmapImage(new Uri("url?ID_IMMAGINE=" + idImg1 + "&HEIGHT=100", UriKind.Absolute));
if (img == null)
{
img = new BitmapImage(new Uri("defaultImage.png",UriKind.RelativeOrAbsolute));
}
}
catch
{
img = new BitmapImage(new Uri("defaultImage.png", UriKind.RelativeOrAbsolute));
}
Ако наистина искате да използвате конвертор, моля преминете през това Връзка със Stackoverflow