2010-09-23 11 views
5

Tengo una aplicación que en la primera carga mostrará una ventana modal para el inicio de sesión del usuario (una ventana sin márgenes). Ahora, cuando el usuario desea minimizar la aplicación haciendo clic en el botón minimizar de la ventana principal, no se puede hacer porque la ventana principal está bloqueada por la ventana modal. Cuando el usuario intenta hacer clic en la barra de tareas de la aplicación, no se minimizará.Cómo minimizar la ventana de propietario cuando se muestra un modal?

¿Cómo puedo permitir que la aplicación se minimice cuando se muestra un modal (usando la barra de tareas de la ventana principal)?

Respuesta

3

Su pregunta es un poco confusa para mí. Si quiere decir, puede minimizar la ventana principal mientras que el diálogo modal está arriba, entonces, no - el diálogo modal tiene control (y ese es el propósito de un diálogo modal).

Sin embargo, se puede minimizar la ventana principal (u ocultarla, o lo que sea) antes mostrar el cuadro de diálogo:

void btnLogin_Click(object sender, RoutedEventArgs e) 
{ 
    MyLoginDialog dialog = new MyLoginDialog(); 
    dialog.WindowStartupLocation = WindowStartupLocation.CenterScreen; 
    dialog.WindowState = WindowState.Normal; 

    this.WindowState= WindowState.Minimized; 
    // Can also do this to completely hide the main window: 
    // this.Visibility = Visibility.Collapsed; 

    dialog.ShowDialog();    
} 
+0

sí que es lo que yo estaba tratando de preguntar: minimizar la ventana principal, mientras que el modal el diálogo está arriba. así que no hay forma, ¿eh? Dejaré la pregunta algunas veces, aunque espero que haya una solución alternativa. – dnr3

+0

Por curiosidad, ¿por qué querrías hacer esto? La razón para no hacerlo es porque es un comportamiento estándar, lo que significa que se comporta como deberían comportarse todas las aplicaciones. Probablemente haya una forma de hackearlo, pero a menos que haya una buena razón para hacerlo, ¿por qué obligarías a tu aplicación a comportarse de una manera que sea contraria a un estándar que se ha establecido? –

+0

es definitivamente la solicitud del cliente lo que me hizo plantear esto. – dnr3

Cuestiones relacionadas