C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[3]: 【C# UWP VS2022】assetsフォルダの画像表示


(過去ログ 172 を表示中)

[トピック内 4 記事 (1 - 4 表示)]  << 0 >>

■99262 / inTopicNo.1)  【C# UWP VS2022】assetsフォルダの画像表示
  
□投稿者/ 綾瀬さとみ (1回)-(2022/03/01(Tue) 16:42:31)

分類:[C#] 

assetsフォルダの画像をImageに表示したいだけなのですが
デバッグすると下記コードの

StorageFile imagefile = await StorageFile.GetFileFromPathAsync(@"Assets\pic1.png");

この部分で処理が終わってしまいます。
原因がわからず質問させて頂きました。
よろしくお願いいたします。


private void button1_Click(object sender, RoutedEventArgs e)
{
Task<BitmapImage> task = Imageget();
Imagewindow.Source = task.Result;

}

static async Task<BitmapImage> Imageget()
{
BitmapImage bitmapimage = new BitmapImage();

StorageFile imagefile = await StorageFile.GetFileFromPathAsync(@"Assets\pic1.png"); //←デバッグするとここで処理が終わってしまいます

using (Windows.Storage.Streams.IRandomAccessStreamWithContentType stream = await imagefile.OpenReadAsync())
{
await bitmapimage.SetSourceAsync(stream);
}

return bitmapimage;
}
引用返信 編集キー/
■99263 / inTopicNo.2)  Re[1]: 【C# UWP VS2022】assetsフォルダの画像表示
□投稿者/ Hongliang (1218回)-(2022/03/01(Tue) 18:10:57)
2022/03/01(Tue) 18:11:19 編集(投稿者)

https://docs.microsoft.com/ja-jp/windows/uwp/files/file-access-permissions
にアクセスできる場所とそのアクセス方法についていろいろ記述があります。
インストールフォルダを基準にする場合、
StorageFile.GetFileFromApplicationUriAsync(new Uri("ms-appx:///assets/ほげほげ"))
みたいなことになるのではないでしょうか。
引用返信 編集キー/
■99271 / inTopicNo.3)  Re[2]: 【C# UWP VS2022】assetsフォルダの画像表示
□投稿者/ 綾瀬さとみ (2回)-(2022/03/02(Wed) 06:23:01)
No99263 (Hongliang さん) に返信

ご回答いただきありがとうございます。

StorageFile imagefile = await StorageFile.GetFileFromApplicationUriAsync(new Uri("ms-appx:///Assets/pic1.png"));

このようにしてみましたが、同じ結果でした。
引用返信 編集キー/
■99296 / inTopicNo.4)  Re[3]: 【C# UWP VS2022】assetsフォルダの画像表示
□投稿者/ 綾瀬さとみ (3回)-(2022/03/03(Thu) 22:31:26)
string fileUri = "ms-appx:///Assets/pic1.png";
BitmapImage bitmap = new BitmapImage(new Uri(fileUri));
Imagewindow.Source = bitmap;

単にこうしたらうまくいきました。
公式に書いてあるやり方がなぜ画像を表示するのにわざわざ非同期なのか
不思議だったのですが
別にそんなことしなくて良かったんですね。
ありがとうございました。
解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -