Tengo una ventana de WPF que se ejecuta en una secuencia de fondo como una especie de "ventana de notificación" ... cuando se produce un evento, se muestra un mensaje ... un usuario hace clic en el botón "Repetir" y llamo al this.Visibility = Visibility.Collapsed
¿Cómo puedo "Ocultar()" una Ventana WPF modal sin que se cierre?
El mismo momento en que oculto la ventana (llamando al this.Hide()
o estableciendo el Visibility
como se mencionó anteriormente) ... el código "ShowDialog()" libera la ventana y la cierra.
Esto es absolutamente un error en el código de WPF (que he identificado a través del reflector) ... pero mi pregunta permanece. ¿Alguien ha sido capaz de encontrar una solución para este problema?
que he probado muchas cosas y ahora estoy tratando de llegar a YA'LL gente inteligente :)
Como una explicación de por qué esto funciona ... el insecto ShowDialog que he mencionado en la pregunta no disponer de la ventana, pero acabo de lanzar el thread-message-pump-hold-it-open-dealio. Entonces, ahora que ya no confiamos en dicho "dealio" ...ocultar/mostrar/ocultar/mostrar es todo bueno :) –
No necesita un hilo separado para una ventana de nivel superior (Mostrar). El hilo principal de la interfaz de usuario se encargará de esto, a menos que haya circunstancias de las que no nos haya hablado. – Tergiver
Hay más: las notificaciones necesitan su propio contexto porque, incluso si la interfaz de usuario principal tiene un cuadro de mensaje (otra ventana "ShowDialog"), esta ventana del notificador debe poder responder a los clics, etc. –