tutorial - Cómo volver a cargar manualmente el diseñador de Visual Studio para WPF
wpf vs windows forms (10)
¿Hay alguna manera de obligar al diseñador de WPF a volver a cargar o actualizar, sin reconstruir todo el proyecto o la solución?
Si hay un error, aparece una opción en la vista del diseñador para actualizar el diseñador. Pero si no tengo un error, ¿cómo puedo hacer que el diseñador se actualice después de hacer un cambio?
Al menos en teoría, la vista de diseño siempre está sincronizada con XAML, por lo que no es necesario actualizarla manualmente. ¿Puedo preguntar bajo qué circunstancias quieres volver a cargarlo?
Cuando agrega una nueva fila de código o un nuevo objeto, el diseñador XAML está sincronizado, pero encontré un comportamiento no sincronizado cuando se cambia una propiedad de un objeto.
Una forma complicada es que cuando cambias una propiedad solo necesitas eliminar un carácter ">" del final de una instrucción y luego teclearlo de nuevo.
El diseñador de Visual Studio intenta mantener la vista procesada sincronizada con XAML. Ese es el comportamiento anunciado.
- Lo primero que debe verificar es que no haya errores en la ventana de errores. Puede ser algo tan simple como un soporte de ángulo faltante.
- Lo segundo que debe verificar es si tiene algún código (que no sea el código subyacente) que debe compilarse para que el diseñador represente correctamente su XAML. Esto incluye cualquiera de sus propios tipos de datos que instancia en XAML, cualquier control personalizado que haya escrito (por ejemplo, MyTextBlock derivado de TextBlock), o cualquier clase directa o indirectamente en apoyo de los datos de tiempo de diseño. Si es así, debes reconstruir tu proyecto.
- Lo último a verificar es a posibles errores en el diseñador. A pesar del comportamiento publicitado, el diseñador puede quedar fuera de sincronización debido a errores. En ese cierre, cierre la ventana XAML y vuelva a abrirla. Otros trucos que podrían funcionar son seleccionar la pestaña XAML y luego la pestaña Diseño, o maximizar el panel XAML.
En cuanto a la reconstrucción de su aplicación, no necesita hacer esto como un hábito. Solo necesita volver a compilar cuando se apliquen las condiciones anteriores. Una vez que no se aplican, puede simplemente editar el XAML. Otra forma de decir esto es que si no ha modificado el código, no debería necesitar reconstruir (errores de módulo).
En las versiones más nuevas de Visual Studio, hay un icono en la parte inferior del diseñador para "Deshabilitar el código del proyecto". Si lo apaga y lo enciende, volverá a cargar el diseñador.
Hay algún evento manejado en ese archivo XAML, y en su mayoría no mostrará la vista previa del diseño de Visual Studio. Si desea ver el diseño de Visual Studio, intente con Enlace de comando en lugar de evento, verá la vista previa.
Llego un poco tarde, pero esta es la mejor solución que he encontrado hasta ahora: cada vez que el diseñador hace cosas estúpidas, simplemente elimino su proceso.
Presiona Ctrl + Shift + Esc
Navega a la pestaña de Procesos.
Mata a XDesProc.exe
Esto también soluciona los problemas de la ventana de propiedades (como cuando se atasca y no se puede ingresar nada).
1 Esta es una solución para problemas de diseño. Sus problemas también pueden ser causados por problemas de compilación, en cuyo caso simplemente haga clic derecho en la solución en el explorador de soluciones y límpielos. La razón detrás de esto es que a veces la compilación pierde sincronicidad con los archivos generados de XAML, y la limpieza de la solución simplemente borra esos archivos intermedios; es como un reinicio por lo que su compilación puede comenzar con una borrón y cuenta nueva.
Para hacerlo rápido:
Cómodamente suele ser el último si se ordena alfabéticamente.
Cuando lo es, es casi como un ritual para mí abrir rápidamente el administrador de tareas, hacer clic en cualquier proceso, presionar End , Delete , Enter (done), Esc (salir del administrador de tareas). En lugar de reiniciar VS y esperar todas las cargas y descargas, puede hacerlo en 1-2 segundos.
No estoy seguro de cómo funciona esto en la edición de WPF, pero con las páginas de ASP.NET cuando la vista de diseño no se actualiza puedo hacer dos cosas
- Salga de Visual Studio y reinicie
- Vaya a la vista de origen (no dividir), escriba algo y elimínelo (no deshaciendo, simplemente elimine o haga una copia de respaldo) y guárdelo. Luego regrese a la vista de diseño, por lo general, la vista se actualizó entonces.
No estoy seguro, pero creo que una compilación actualizará tu vista en esa situación.
Para obtener información, tuve el mismo problema con XAML Designer of Visual Studio Community 2017, es decir, algunas veces el diseñador no muestra nada, la solución más fácil es cerrar el archivo XAML y volver a abrirlo.
También recibo con frecuencia la excepción "Se ha producido una excepción no controlada: haga clic aquí para volver a cargar el diseñador. Detalles: el diseñador de XAML ha salido inesperadamente" (el clic reinicia el diseñador con éxito).
Tenga en cuenta que, en esta versión VS, el proceso del diseñador XAML no se llama XDesProc.exe, sino UwpSurface.exe . Si prefiere o tiene que matar el proceso, el diseñador muestra la misma excepción que la anterior y puede reiniciarlo.
Puede agregar esto al menú Tools
en Visual Studio.
Una vez configurado, use Tools..XAML Designer Restart
:
Alt + T luego L
Intenté configurarlo para Alt + T y luego para X, pero esto chocó con las Tools..Choose ToolboX Items
. Tools..Choose ToolboX Items
.
Actualizar
En estos días, prefiero presionar Ctrl + Shift + Esc para que aparezca el administrador de procesos, luego X para saltar a XDesProc.exe
luego Eliminar para eliminar el (los) proceso (s) fraudulento (s).