Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Para depurar código en tiempo de diseño en lugar de mientras se ejecuta una aplicación, puede usar la ventana Inmediato .
Para depurar el código XAML subyacente de una aplicación desde el diseñador XAML, como escenarios de enlace de datos declarativos, puedes usar Depurar>Asociar a Proceso.
Uso de la ventana Inmediato
Puede usar la ventana Inmediato de Visual Studio para ejecutar una función o subrutina sin ejecutar la aplicación. Si la función o subrutina contiene un punto de interrupción, Visual Studio se interrumpirá en el punto de interrupción. A continuación, puede usar las ventanas del depurador para examinar el estado del programa. Esta característica se denomina depuración en tiempo de diseño. Para obtener información detallada, consulte Usar la ventana Inmediata
El ejemplo siguiente está en Visual Basic. También puede usar la ventana Inmediato en modo diseño en aplicaciones de C#, F# y C++/CLI. Para C++/CLI, compile sin la opción /clr para usar la ventana Inmediato.
Pegue el código siguiente en una aplicación de consola de Visual Basic en blanco:
Module Module1 Sub Main() MySub() End Sub Function MyFunction() As Decimal Static i As Integer i = i + 1 Return i End Function Sub MySub() MyFunction() End Sub End ModuleEstablezca un punto de interrupción en la línea End Function.
Abra la ventana Inmediato seleccionando Depurar>Windows>Immediate. Escriba
?MyFunctionen la ventana y presione Entrar.Se alcanza el punto de interrupción y el valor de MyFunction en la ventana Variables locales es 1. Puede examinar la pila de llamadas y otras ventanas de depuración mientras la aplicación está en modo de interrupción.
Seleccione Continuar en la barra de herramientas de Visual Studio. La aplicación finaliza y 1 se devuelve en la ventana Inmediato . Asegúrese de que todavía está en modo de diseño.
Escriba
?MyFunctionde nuevo en la ventana Inmediato y presione Entrar. Se alcanza el punto de interrupción y el valor de MyFunction en la ventana Variables locales es 2.Sin seleccionar Continuar, escriba
?MySub()en la ventana Inmediato y presione Entrar. Se alcanza el punto de interrupción y el valor de MyFunction en la ventana Variables locales es 3. Puedes examinar el estado de la aplicación mientras la aplicación está en modo de interrupción.Selecciona Continuar. El punto de interrupción se vuelve a alcanzar y el valor de MyFunction en la ventana Variables locales es ahora 2. La ventana Inmediato devuelve La expresión ha sido evaluada y no tiene valor.
Seleccione Continuar de nuevo. La aplicación finaliza y 2 se devuelve en la ventana Inmediato . Asegúrese de que todavía está en modo de diseño.
Para borrar el contenido de la ventana Inmediato , haga clic con el botón derecho en la ventana y seleccione Borrar todo.
Depuración de un control XAML personalizado en tiempo de diseño mediante la asociación al diseñador XAML
Abra la solución o el proyecto en Visual Studio.
Compile la solución o el proyecto.
Abra la página XAML que contiene el control personalizado que desea depurar.
Para proyectos de UWP que tienen como objetivo la versión de compilación 16299 de Windows o superior, este paso iniciará el proceso deUwpSurface.exe. En el caso de los proyectos de WPF destinados a la compilación 16299 de Windows o superior, este paso iniciará el WpfSurface.exe proceso. En el caso de las versiones de WPF o UWP anteriores a la compilación 16299 de Windows, este paso iniciará el proceso deXDesProc.exe .
Abra una segunda instancia de Visual Studio. No abra una solución ni un proyecto en la segunda instancia.
En la segunda instancia de Visual Studio, abra el menú Depurar y elija Asociar al proceso....
En función del tipo de proyecto (consulte los pasos anteriores), seleccione el UwpSurface.exe, WpfSurface.exeo el proceso deXDesProc.exe de la lista de procesos disponibles.
En el campo Asociar al cuadro de diálogo Asociar al proceso , elija el tipo de código correcto para el control personalizado que desea depurar.
Si el control personalizado se ha escrito en un lenguaje .NET, elija el tipo de código .NET adecuado, como Managed (CoreCLR). Si el control personalizado se ha escrito en C++, elija Nativo.
Adjunte la segunda instancia de Visual Studio haciendo clic en el botón Adjuntar .
En la segunda instancia de Visual Studio, abra los archivos de código asociados al control personalizado que desea depurar. Asegúrese de abrir los archivos, no toda la solución o el proyecto.
Coloque los puntos de interrupción necesarios en los archivos abiertos anteriormente.
En la primera instancia de Visual Studio, cierre la página XAML que contiene el control personalizado que desea depurar (la misma página que abrió en pasos anteriores).
En la primera instancia de Visual Studio, abra la página XAML que cerró en el paso anterior. Esto hará que el depurador se detenga en el primer punto de interrupción establecido en la segunda instancia de Visual Studio.
Depure el código en la segunda instancia de Visual Studio.