にStorageFileから適切にすべてのファイルを読み取ることができません、私が入れたコードは以下の通りです:は私がWindows 8のメトロアプリケーションで簡単なアプリケーションを開発していると私はPicturesLibraryからファイルを取得しようとしているmはWindows 8のメトロアプリケーション
public async void Initialize()
{
IReadOnlyList<StorageFile> storageFiles = await KnownFolders.PicturesLibrary.GetFilesAsync();
foreach (var storageFile in storageFiles)
{
BitmapImage bitmapImage = new BitmapImage();
FileRandomAccessStream stream = (FileRandomAccessStream)await storageFile.OpenAsync(FileAccessMode.Read);
bitmapImage.SetSource(stream);
Image image = new Image();
image.Source = bitmapImage;
Images.Add(image);
}
}
次に、ImageSourceを使用してこれらの画像を表示します。 私が出会っている問題は、ときにはそれがすべての、時には1つの または2つ、時にはイメージを表示しないことを示していることです。これが待ち受け可能なメソッドGetFileAsync()または他のもの欠落している可能性があります事前に
感謝:)
NON-asyncメソッドを試してみて、すべてのファイルが一貫して取得できるのはなぜですか? –
@jberger - そのようなAPIは利用できません。MetroにはSilverlightのように多くの非同期機能しかありません。 –
私はまだasync/awaitに慣れていませんが、 'StorageFolder.GetFilesAsync()'は 'IAsyncOperation'を返し、 'Completed'イベントを返します。 –