Tengo una pregunta acerca de la creación de un multi-idioma de la aplicación y el uso de los archivos de recursos. Voy a explicar lo que he hecho y lo que me gustaría que el producto final que se desea.
Estoy haciendo esto VB.Net y el uso de Visual Studio 2008
Después de la creación de un nuevo proyecto, he añadido un archivo de recursos para el proyecto (Add -> Nuevo Elemento, Selecciona el Archivo de Recursos, denominado Resource1.resx).
Yo, a continuación, haga doble clic en el archivo de recursos y es capaz de añadir algunos nombres y valores. Por ejemplo,
Nombre – lblFirstName, valor – Juan
Nombre – lblLastName, valor – Smith
En mi formulario, tengo 2 etiquetas: FirstName y LastName
En el Código, he añadido
FirstName.Text = My.Resources.Resource1.lblFirstName
LastName.Text = My.Resources.Resource1.lblLastName
Si ejecuto este código, funciona bien. Juan y Smith se muestran en las etiquetas.
Ahora para mi pregunta. Dicen que en lugar de su nombre y apellido de las etiquetas (botones, elementos de menú, etc.) en realidad fueron las palabras que iba a ser diferentes en idiomas diferentes. Lo que me gustaría es tener algo como
EnglishText.resx
SpanishText.resx
GermanText.resx
Cada archivo de recursos de contener los mismos nombres, sólo diferentes valores. Dependiendo de qué idioma se selecciona, se decidió por el usuario (en un menú), ¿cómo puedo conseguir la coincidencia de archivo de recursos a ser utilizados.
Básicamente lo que quiero sería
FirstName.Text = My.Resources.<Language Specific Resource File>.lblFirstName
Es algo como esto posible? Es este un enfoque aceptable? Hay una manera mejor de hacer esto?
Cualquier consejo o sugerencia será muy apreciada. Yo intente comprobar a menudo para ver si hay preguntas de seguimiento o si más información debe ser proporcionada.
El .NET la plataforma está construida con la localización en mente. Ya hay un mecanismo innato para la localización de las asambleas y los recursos basados en la cultura actual. Aquí están algunos de arranque enlaces que usted debe leer antes de intentar rodar sus propios:
http://msdn.microsoft.com/en-us/library/bb398937.aspx
http://msdn.microsoft.com/en-us/goglobal/bb688096.aspx
Recurso de captura de pantalla
Digamos, tiene 3 idiomas que usted podría hacer algo como esto:
Entonces, usted puede utilizar:
Sólo he hecho esto desde dentro de esta forma, no es probado así que lo siento si no funciona