Pregunta

No entiendo ...

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

Salida: " Ancho: 1, Altura: 1 " ;.

Probé PixelWidth / PixelHeight, intenté crearlo manualmente con BeginInit / EndInit y también configuré PreservePixelFormat ... nada funciona.

(Excepto, incluso más extraño: todo esto es parte de un proceso donde el usuario hace clic en un botón y se descargan algunas imágenes. Bueno, la segunda vez que se hace clic en el botón, sí lo hace. no tiene 1 ancho / alto.)

¿Fue útil?

Solución

La primera vez que el usuario hace clic en el botón, el mapa de bits no se ha descargado todavía, por lo que cualquier cosa que haga con él causará resultados no deseados (excepto mostrarlo, porque el control de imagen sabe cómo manejar esto).

Puede controlar el evento BitmapImage.DownloadCompleted para saber cuándo está disponible el mapa de bits.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top