Imagen en un Label

28/10/2009 - 00:02 por Alberto | Informe spam
El control Label tiene una propiedad Image a la que estoy volcando un png.
Me gustaría poder ajustar la imagen al tamaño del Label (como hace la
propiedad SizeMode al volcarle el valor StretchImage en un PictureBox).

¿Es posible lograrlo? Gracias
 

Leer las respuestas

#1 SoftJaén
29/10/2009 - 06:01 | Informe spam
"Alberto" preguntó:

El control Label tiene una propiedad Image a la que estoy volcando un png.
Me gustaría poder ajustar la imagen al tamaño del Label (como hace la
propiedad SizeMode al volcarle el valor StretchImage en un PictureBox).

¿Es posible lograrlo?




Hola, Alberto:

Puedes lograrlo indicándole a la propiedad Image del control Label una
imagen en miniatura (Thumbnail), que puede adaptarse al tamaño que tenga el
control Label.

Imagina que obtienes un objeto Image desde un archivo de tu disco duro para
asignárselo a la propiedad Image del control Label:

// Aunque no se utiliza, es necesario crear un delegado
//
Image.GetThumbnailImageAbort callback new Image.GetThumbnailImageAbort(ThumbnailCallback);

// Creamos el objeto Image
//
Image img = Image.FromFile("C:\\Mis imágenes\\Archivo.jpg");

// Obtenemos la imagen en miniatura con las dimensiones
// actuales del control Label
//
Image thumbnail = img.GetThumbnailImage
(label1.Width, label1.Height, callback, IntPtr.Zero);

// Asignamos la propiedad Image del control Label.
//
label1.Image = thumbnail;

public bool ThumbnailCallback()
{
return false;
}

Como podrás observar, la imagen se adaptará al tamaño que tenga el control
Label cuando llames al método GetThumbnailImage del objeto Image. Si una vez
especificada la propiedad Image, redimensionas el tamaño del control Label,
nuevamente tendrás que llamar al método GetThumbnailImage, porque la imagen
en miniatura no se redimensiona automáticamente. :-)

Un saludo

Enrique Martínez
[MS MVP - VB]

Nota informativa: La información contenida en este mensaje, así como el
código fuente incluido en el mismo, se proporciona «COMO ESTÁ», sin
garantías de ninguna clase, y no otorga derecho alguno. Usted asume
cualquier riesgo al poner en práctica, utilizar o ejecutar lo recomendado o
sugerido en el presente mensaje.

Preguntas similares