WPF
アプリケーションに約20枚の画像をロードしようとしています。最初の画像だけが完全に読み込まれます。他の画像は部分的に読み込まれています。デバッグにブレークポイントを使用すると、2秒後に各イメージを読み込もうとしましたが、うまくいきました。部分的にロードされている画像
コード
イメージは以下のようにロードされます 、
foreach (string path in ImagesCollection)
{
DisplayImage = LoadImage(path);
}
の画像を取り込み方法、
MemoryStream mem;
if (!string.IsNullOrEmpty(path) && (File.Exists(path)))
{
FileInfo ImageFile = new FileInfo(path);
ImageFile.Refresh();
if (mem != null)
{
mem.Dispose();
}
using (var stream = ImageFile.OpenRead())
{
mem = new MemoryStream();
stream.CopyTo(mem);
}
mem.Position = 0;
ImageFrame = BitmapFrame.Create(mem);
}
スクリーンショット:
私はDispose
と考えています。新しいインスタンスがイメージを読み込まないと思います。親切に助けてください。
は、これはあなたを意味
あなたはすべてのストリームをコピーせずに '' BitmapFrame.Create(新しいウリ(パスを))使用していない理由は、何らかの理由はありますか? – Clemens
@クレメンスいいえ、イメージは複数の場所に読み込まれ、MSペイントには編集と保存の機能もあります。 '新しいUri(パス)'を使用すると 'アクセス違反エラー'がスローされますか?わからない。 – iamCR
@HenkHoltermanそれを改革していただけますか? – iamCR