Mam plik .png jako treść mojej aplikacji. Kiedy wiążę go w Xaml, to wszystko jest w porządku.Jak odnosić się do plików źródłowych obrazów, które są spakowane w mojej aplikacji w stylu metra?
Czytam this article i kiedy próbuję uzyskać dostęp do tego .png programowo pojawia się błąd.
Kod używam:
Uri baseUri = new Uri("ms:appx");
Image img = new Image();
img.Source = new BitmapImage(new Uri(baseUri, "/Assets/Images/back.png"));
img.ImageFailed += (sender, args) => new MessageDialog("Error").ShowAsync();
I moje pytanie brzmi: w jaki sposób odwoływać pliki źródłowe obrazu, które są pakowane w moim stylu metro app?
Dzięki za porady.
AKTUALIZACJA: Znalazłem odpowiedź! Potrzebujemy ustawić baseUri przy użyciu rodzica FrameworkElement zamiast ustawiania go ręcznie. Na przykład:
// Usage
myImage.Source = ImageFromRelativePath(this, "relative_path_to_file_make_sure_build_set_to_content");
public static BitmapImage ImageFromRelativePath(FrameworkElement parent, string path)
{
var uri = new Uri(parent.BaseUri, path);
BitmapImage result = new BitmapImage();
result.UriSource = uri;
return result;
}
Dzięki za to article.
Powinien to być ms-appx: /// zanotować 3 / – ickydime