我正在尝试从网站获取图像的高度和宽度,但它始终返回 0,因为图像尚未下载,所以我使用了以下代码但仍然无法正常工作,因为图像只会在方法结束后开始下载,所以它挂了
someMethod
{
foreach(string imagepath in paths){
IsDownloaded = false;
image = new BitmapImage(new Uri(imagepath));
image.ImageOpened += image_ImageOpened;
while (!IsDownloaded) ;
/// code that will use image.PixelHeight only if it satisfy a condition then break
}
private void image_ImageOpened(object sender, RoutedEventArgs e)
{
IsDownloaded = true;
}
在 Metro 风格的应用程序中,有没有人对此有任何替代或任何修复