ApplicationLanguages.PrimaryLanguageOverride | primaryLanguageOverride Property

Obtiene o establece un reemplazo para el idioma preferido de la aplicación, expresada como etiqueta de lenguaje BCP-47. Este valor es persistente.

Sintaxis


var primaryLanguageOverride = Windows.Globalization.ApplicationLanguages.primaryLanguageOverride;
Windows.Globalization.ApplicationLanguages.primaryLanguageOverride = primaryLanguageOverride;

Valor de propiedades

Tipo: String [JavaScript] | System.String [.NET] | Platform::String [C++]

Una etiqueta de idioma BCP-47. La aplicación puede establecerla para reemplazar el idioma superior de la lista clasificada de idiomas preferidos del usuario (ApplicationLanguages.Languages), y su valor permanecerá entre sesiones de la aplicación. Debe ser una única etiqueta de idioma; una lista delimitada de etiquetas producirá un error.

Cuando la aplicación obtiene el valor, PrimaryLanguageOverride devuelve una etiqueta de idioma única (si su aplicación ha establecido previamente la propiedad) o una cadena vacía.

Comentarios

Las aplicaciones suelen ejecutarse con la configuración de idioma que determina el sistema comparando los idiomas que admite la aplicación con las preferencias de idioma del usuario. La configuración de este comportamiento del sistema se puede obtener utilizando la propiedad ApplicationLanguages.Languages. La propiedad PrimaryLanguageOverride se utiliza para invalidar ese comportamiento estableciendo un idioma concreto como el primer idioma en la lista de idiomas.

El valor de PrimaryLanguageOverride se conserva entre las sesiones. No se debe establecer cada vez que se carga la aplicación. Solo se debe establecer basándose en los datos proporcionados por el usuario en la interfaz de usuario de configuración. La propiedad se puede leer en cualquier momento. Si la propiedad no se ha establecido nunca, devuelve una cadena vacía.

Cuando establece PrimaryLanguageOverride, esto se refleja inmediatamente en la propiedad ApplicationLanguages.Languages. Sin embargo, puede que este cambio no surta efecto inmediatamente en los recursos cargados en la interfaz de usuario de la aplicación. Para garantizar que la aplicación responde a los cambios, puede escuchar a la propiedad QualifierValues en un contexto de recursos predeterminado y realizar las acciones que puedan ser necesarias para recargar recursos. Esos requisitos pueden variar según la interfaz de usuario utilizada por la aplicación, y puede ser necesario reiniciar la aplicación.

Nota  Si la aplicación pasa etiquetas de idioma desde esta clase a cualquier función de compatibilidad con el idioma nacional, primero debe convertir las etiquetas llamando a ResolveLocaleName.

A partir de Windows 8.1:

Las etiquetas de idioma pueden ser compatibles con extensiones Unicode. Vea los comentarios de la clase ApplicationLanguages.

Las aplicaciones de la Tienda Windows se pueden implementar mediante paquetes de recursos. Cuando se utilizan paquetes de recursos de idioma, los paquetes que se instalan y registran para un usuario concreto están determinados por los idiomas del perfil de idioma del usuario. Como resultado, no todos los idiomas incluidos en el grupo de aplicaciones que se envió a la Tienda Windows estarán disponibles para el uso en el tiempo de ejecución. La propiedad PrimaryLanguageOverride solo se debe establecer para idiomas que están disponibles para el usuario.

Los idiomas disponibles para que la aplicación los use como objeto ApplicationLanguages en tiempo de ejecución se reducen a los idiomas incluidos en el manifiesto del paquete principal de la aplicación y los idiomas correspondiente a los paquetes de recursos de idiomas aplicables al usuario (determinados por los idiomas seleccionados en las preferencias de usuario), y que están instalados y registrados para el usuario. La propiedad ApplicationLanguages.ManifestLanguages refleja los paquetes de recursos de idioma disponibles para el usuario y, por consiguiente, devuelve un conjunto correcto de idiomas que se pueden utilizar para establecer la propiedad PrimaryLanguageOverride.

La propiedad ApplicationLanguages.Languages devolverá una lista muy similar a la propiedad ManifestLanguages. A diferencia de ella, puede incluir variaciones regionales del idioma que no están incluidas en ningún manifiesto del paquete; por ejemplo, "en-CA" (Inglés (Canadá)) podría ser el resultado de la propiedad Languages si el usuario tiene "en-CA" en su perfil y la aplicación es compatible con todas las variedades regionales del inglés. Estas variaciones regionales del idioma obtenidas del usuario pueden ser preferibles para establecer la propiedad PrimaryLanguageOverride ya que la aplicación proporcionará comportamientos de globalización más adecuados para el usuario.

Si un lenguaje se encuentra en el paquete de la aplicación principal pero no es una coincidencia para cualquier lenguaje en la preferencia del usuario, se devuelve por la propiedad ManifestLanguages pero no la propiedad Languages. Estos se pueden utilizar para establecer la propiedad PrimaryLanguageOverride. Sin embargo, ya que estos lenguajes no se reflejan en las preferencias del usuario, puede que el usuario no comprenda esos lenguajes. Estos valores únicamente deben utilizarse cuando los elige directamente el usuario.

Requisitos

Cliente mínimo admitido

Windows 8

Servidor mínimo admitido

Windows Server 2012

Espacio de nombres

Windows.Globalization
Windows::Globalization [C++]

Metadatos

Windows.winmd

Vea también

ApplicationLanguages
ApplicationLanguages.Languages
Etiquetas de idioma BCP-47

 

 

Mostrar:
© 2015 Microsoft