ventana - mensaje de error en c#
¿Cómo creo un cuadro de diálogo emergente en Silverlight? (6)
Me gustaría crear un cuadro de diálogo emergente en Silverlight en el que pueda manipular controles, ingresar datos y devolver un valor. Quiero que sea modal, de modo que cuando esté abierto, la página "Abajo" no sea accesible. No he encontrado una manera fácil de hacer esto todavía. ¿Alguna sugerencia?
No he encontrado una solución perfecta tampoco. Lo más parecido que he visto es esto: usar Popup para crear una clase de diálogo
Si está bien no ser modal, puede probar este consejo usando HtmlPage.PopupWindow (). Cómo abrir una ventana del navegador
Soy nuevo en el marco de Sliverlight y estoy empezando a descubrirlo, pero tengo una necesidad similar de un cuadro de diálogo modal emergente. Acabo de probar una idea que parece prometedora:
- Creé un Rectángulo (llamado "Escudo") que cubre todo el área de mi aplicación. Existe encima de todo en la aplicación principal. Configuré el pincel de relleno en Blanco, y el pincel de opacidad en un 81% para que se muestren los contenidos de la aplicación principal, pero ligeramente (como en deshabilitado). Luego asegúrate de que el "Escudo" se pueda probar con éxito. Ahora, cuando el "Escudo" esté visible, también, de hecho, bloqueará todas las entradas a los controles a continuación (al menos desde el mouse, aún no se ha probado el teclado). Cuando la aplicación se inicializa, establece la visibilidad "Escudo" en Contraída. En ese estado, no bloqueará la entrada a la aplicación principal.
- El cuadro de diálogo se construye en otro elemento canvas que existe en el orden z en la parte superior del escudo. Normalmente, el cuadro de diálogo será invisible, pero cuando lo necesito, simplemente configuro el "Escudo" como visible y el cuadro de diálogo como visible. Como el diálogo está en la parte superior del "Escudo", obtengo un comportamiento muy modal. Cuando el cuadro de diálogo está cerrado, vuelva a hacer que el lienzo del diálogo y el lienzo "Escudo" sean invisibles y que la aplicación principal vuelva a estar activa.
Estoy seguro de que esta es la forma más brutal de hacerlo y que eventualmente me concentraré en una construcción más elegante, pero funciona por ahora.
Una solución más elegante está aquí: http://community.devexpress.com/blogs/theonewith/archive/2008/08/06/custom-silverlight-controls-creating-a-reusable-messagebox-dialog-part-i.aspx
Sé que la pregunta era sobre una solución Silverlight 2, pero en Silverlight 3 (Beta ahora, RTW en julio de 2009), hay una ChildWindow incorporada que puede hacer todo lo que está buscando.
Tenía el mismo requisito y ScottGu''s Construir un diálogo modal básico usando un control de usuario era la mejor solución que se ajustaba a mis requisitos.
Aquí hay una biblioteca gratuita que proporciona uno: http://www.vectorlight.net/demos/popup_dialogs.aspx