ここで画像を表示する際に少し問題があります。
XAMLから画像を読み込もうとすると、次のように画像ソースに相対的なURIを使用できます。
<Image Source="/Assets/image.jpg" />
ただし、コードビハインドからプログラムでイメージソースを変更しようとすると、常に例外が発生します。これは、誤ったUriによるものだと確信しています。私はこのようなものを試しました:
BitmapImage bitmapImage = new BitmapImage(new Uri("/Assets/image.jpg"));
私は間違っていますか?どんな助けも感謝します、ありがとう!
アプリケーションパッケージ内に格納されているファイルにアクセスするために、推定ルート権限がないコードから、ms-appx:スキームを指定する必要があります。
あなたの場合、次のようなものになります:
BitmapImage bitmapImage =
new BitmapImage(new Uri("ms-appx:///[project-name]/Assets/image.jpg"));
詳細については、このドキュメントをお読みください: https://msdn.Microsoft.com/en-us/library/windows/apps/xaml/hh965322.aspx
それが役に立てば幸い。
BaseUriでも使用できます。
BitmapImage bitmapImage = new BitmapImage(new Uri(this.BaseUri, "/Assets/image.jpg"));
アセットはフォルダー名であり、カスタムのフォルダー名で変更できます:)
WPFはより寛容で、「Assets/image.png」のようなパスが可能だと思います。 UWA(win 10)アプリを作成している場合は、「ms-appx」URIを使用する必要があります。
私の経験では、「ms-appx:///Assets/image.png」は問題なく動作します。
はい、3つの "/"(!)で、パスにアプリの名前は必要ありません。