WPF BitmapImage的宽度/高度总是1?

4

我不明白...

BitmapImage img = new BitmapImage(myUri);
Console.WriteLine("Width: {0}, Height: {1}", img.Width, img.Height);

输出: "宽度:1,高度:1"。
我尝试过PixelWidth / PixelHeight,我尝试过使用BeginInit / EndInit手动创建它,还设置了PreservePixelFormat ... 什么都不起作用。
(除了更奇怪的是:这都是用户点击按钮并下载一些图像的过程的一部分。好吧,第二次单击该按钮时,它确实具有非1的宽度/高度。)
1个回答

4

当用户第一次点击按钮时,位图尚未下载 - 因此,您对其进行的任何操作都会导致垃圾结果(除了显示它,因为Image控件知道如何处理它)。

您可以处理BitmapImage.DownloadCompleted事件以了解位图何时可用。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接