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.
Actualización: noviembre 2007
En este ejemplo se muestra cómo detectar si un fragmento de código se ejecuta desde Aplicación del explorador XAML (XBAP) o desde una aplicación independiente.
En este ejemplo, se muestra una característica específica de Windows Presentation Foundation y, por tanto, no se siguen los procedimientos recomendados para el desarrollo de aplicaciones. Para obtener información completa sobre los procedimientos recomendados para el desarrollo de aplicaciones de Windows Presentation Foundation (WPF) y Microsoft .NET Framework, consulte la siguiente información según corresponda:
Accesibilidad: Procedimientos de accesibilidad recomendados
Localización: Información general sobre la localización y globalización de WPF
Rendimiento: Optimizar WPF: Rendimiento de aplicaciones
Seguridad: Seguridad de Windows Presentation Foundation
Generar el ejemplo
Instale el Kit de desarrollo de software de Windows (SDK) y abra la ventana de comandos del entorno de compilación. En el menú Inicio, elija Todos los programas, Microsoft Windows SDK y haga clic en Shell CMD.
Descargue el ejemplo, que encontrará en la documentación del kit de desarrollo de software (SDK), al disco duro.
Para generar el ejemplo en la ventana de comados del entorno de compilación, vaya al directorio de origen del ejemplo. En el símbolo del sistema, escriba MSBUILD.
Para generar el ejemplo en Microsoft Visual Studio, cargue la solución de ejemplo o el archivo del proyecto y presione CTRL+MAYÚS+B.
Ejecutar el ejemplo
Para ejecutar el ejemplo compilado en la ventana de comandos del entorno de compilación, ejecute el archivo .exe en la carpeta Bin\Debug o Bin\Release, que se encuentra bajo la carpeta de código fuente de ejemplo.
Para ejecutar el ejemplo compilado con depuración en Visual Studio, presione F5.
Comentarios
Este ejemplo está compuesto de una biblioteca (SharedLibary) compartida por una aplicación Aplicación del explorador XAML (XBAP) (XBAPClient) y una aplicación para Windows independiente (WinAppClient). SharedLibrary encapsula la funcionalidad para realizar una tarea que es común a ambas aplicaciones cliente. Parte de esta funcionalidad consiste en mostrar una interfaz de usuario (UI) adecuada para el tipo de cliente que hospeda; por ejemplo, una página (Page) si se hospeda en un explorador, o una ventana (Window) si se hospeda en una aplicación independiente.
La biblioteca compartida utiliza la propiedad IsBrowserHosted para detectar si se ejecuta en una aplicación hospedada por explorador o independiente.
Nota
El código que crea una instancia de Window no puede estar en el mismo miembro que el código que inspecciona la propiedad IsBrowserHosted; Window tiene una exigencia de herencia que requiere que el miembro donde se crea la instancias tenga UIPermission. Para resolver este problema, puede refactorizar el código moviendo el código de creación de instancia de Window a un método independiente al que se llama desde el mismo miembro en el que se inspecciona IsBrowserHosted, como se muestra en este ejemplo.