Hola:
Tengo un formulario de un tamaño determinado, que tiene un tamaño inicial de 240x320 pixels, de tal modo que el botón de maximizar es máximizar (no volver a su tamaño original).
Cuando utilizo el siguiente código en el evento resize del formulario, cuando hace el primer escalado de maximizado funciona correctamente:
this.Scale(new System.Drawing.SizeF(ClientSize.Width /anchoFormulario, ClientSize.Height / altoFormulario));
anchoFormulario = ClientSize.Width;
altoFormulario = ClientSize.Height;
altoFormulario y anchoFormulario son variables locales de formulario para conocer el ancho y alto antes del resize, para conocer el factor a aplicar.
Es decir, todos los controles aumentan en proporción y se colocan en la posición correcta. Todos los controloes tienen el anchor en top, left.
Sin embargo, cuando doy al botón de ventana para que vuelva a su tamaño original, el tamaño de los controles no cambia y el formulario tampoco vuelve a su tamaño original, sino que se queda muy grande.
Además, cuando se minimiza he notado que el método resize se ejecuta 6 o 7 veces, no una como cuando hago la primera maximinación. ¿Por qué puede ser?.
En resumen, me gustaría saber si hay alguna forma buena para aumenta el tamaño de los controles en proporción tanto cuando se hace grande la ventana como cuando se hace pequeña.
Se podría ir controloando el tamaño control a control, pero es mucho código cuando en teoría el método sizeF lo hace automáticamente.
Por cierto, uso c# 2008 Express.
Gracias.
Daimroc.