WPF ventana de medida: ventana maximizada con Win7 Aero Snap no puede “Quite a presión”
Pregunta
Tengo una aplicación de WPF que utiliza un marco de ventana personalizado. Mi problema es que no puedo "Desenganche" mi ventana maximizada con Aero Snap en Windows 7.
Propiedades de mi ventana:
-
AllowsTransparency
se establece entrue
-
WindowStyle
se establece enNone
-
ResizeMode
se establece enCanResizeWithGrip
.
Me ventana mango movimiento de arrastre de este modo:
private void TitleBarGrid_MouseLeftButtonDown(object sender, System.Windows.Input.MouseButtonEventArgs e)
{
DragMove();
}
Me puede acoplar la ventana a la izquierda, a la derecha, y en la parte superior, y tienen que comportarse como ventanas normales (ampliar para llenar la mitad izquierda de la pantalla, expanda para llenar la mitad derecha de la pantalla, maximizada, respectivamente).
No estoy seguro de cómo funciona Aero Snap, pero lo que me parece extraño es que las ventanas normales de WPF (Windows no personalizados) funcionan bien; Puedo desabrochar ellos si se maximizan sin ningún problema. ¿Por qué entonces la aplicación de las propiedades anteriores a mi descanso ventana que?
¿Es posible que la necesidad de hacer algún mensaje WM personalizada manipulación para hacer este trabajo?
Solución
Acabé usando el WPF Shell Biblioteca Integración de Microsoft. Se ocupa de toda la magia de bajo nivel necesario para hacer el trabajo Aero Snap.