Im creando una aplicación C# basada en WinForms/KryptonForms, y como la aplicación está a medio camino de desarrollo, pensé para mí mismo que era mejor ordenar la localización.Localización en la aplicación C#
Como programador de PHP nacido y criado (y sé que C# es un nivel completamente nuevo), crearía una clase para detectar el idioma y asignar automáticamente el paquete de idioma a la aplicación. y luego usa los objetos de lenguaje para acceder a los valores.
Me pregunto si puedo conseguir algunos ejemplos en los más fácil/ métodos mejores de hacer esto.
Personalmente me gustaría algo en la línea de las Opciones de la aplicación
Donde generalmente que haría MyApplication.Properties.Settings.Default.SomeKey
Tenía la esperanza de un MyApplication.Languages.Current.ApplicationTitle
y MyApplication.Languages.en.ApplicationTitle
por ejemplo.
También al cargar solo un recurso por archivo de idioma para mejorar la velocidad sería beneficioso también.
Así que el idioma se carga en inglés, se promueve que el usuario español esté en inglés, le gustaría cambiarlo al español, hace clic en SÍ, la configuración se actualiza y la aplicación se reinicia y carga el idioma español paquete.
¿Qué piensas de esto?
Editar:
La aplicación se basa en los protocolos XMPP y utiliza agsXMPP Bibliotecas. Según tengo entendido, cada usuario que me envíe su presencia también debe enviar el idioma en el que se encuentra su sistema.
Así que, básicamente, si hay alguna forma de "captar" el hecho de almacenar una sola palabra y usar el __("some string")
en mi aplicación sería posible, pero por el momento estoy mirando el texto de la GUI.
Lo que "los recursos lingüísticos de las ventanas" Qué quiere decir? – garik
Bueno, bajo la suposición de que Windows normalmente almacenaría líneas de idioma dentro de un archivo dll en el sistema, ¿podría importarlas a mi aplicación para ahorrar tiempo escribiendo, solo texto de forma general como 'Archivo',' Ayuda', 'Opciones', 'Error', etc. ¿Sería eso factible? – RobertPitt
No tiene sentido, creo. Pasará más tiempo para investigar todos los recursos de Windows y por qué? Los clientes tienen sus propios marcos (inglés, españa, alemania ...) y framework muestra sus mensajes del sistema (advertencia, error) utilizando esos mensajes localizados. Tu aplicación tiene sus propios recursos de texto. Así que estén listos para traducirlos todos. No hay magia, solo trabajo ... trabajo ... trabajo ... :). – garik