2010-07-05 15 views
18

Tengo una aplicación WPF que comienza con una ventana muy pequeña. Algo en el área de 200x100. Cuando se generan ciertos eventos desde una fuente externa, agrego un control al área de Control de elementos de mi ventana. El control de elementos está configurado actualmente para usar una plantilla de panel de StackPanel.¿Cómo puedo hacer que una Ventana de WPF se expanda para adaptarse al contenido de un ItemsControl que cambia dinámicamente?

Lo que quiero es que la ventana de la aplicación crezca cuando se agreguen controles al control de elementos. ¿Es esto posible? La idea detrás de esto es mantener la ventana lo más pequeña posible en todo momento. También debería reducirse cuando se eliminan los controles del control de elementos.

Gracias.

Respuesta

33

Sí, es posible. Puede usar la propiedad Window.SizeToContent para hacer eso. Y simplemente establezca MaxHeight y MaxWidth en Window o ItemsControl adentro para que no siga creciendo y saliendo de los límites de la pantalla.

+0

De hecho, descubrí la propiedad justo después de hacer la pregunta. WPF es bastante abrumador, estoy descubriendo que omito las cosas más fáciles con frecuencia. Gracias. –

11

Y si usted quiere ponerlo en XAML para WPF podría utilizar

<Window 
    SizeToContent="WidthAndHeight" 
> 

Se puede ajustar por separado para la Height y la Width si es necesario.

Cuestiones relacionadas