Retroceder   Foros del Web > Programación para sitios web > .NET > win forms

Respuesta
 
Herramientas Desplegado
Antiguo 09-mar-2008, 10:16   #1 (permalink)
komodo no se puede cailificar en este momento
 
Fecha de Ingreso: noviembre-2006
Mensajes: 421
Aplicación con diferentes idiomas.

Hola foreros. Alguien sabe como crear una aplicación multilenguaje? Tengo un menu donde tengo una opcion Idioma donde puedo elegir entre 3 idiomas, me gustaria que al apretar sobre alguno me cambie el idioma de todos los textos de la aplicación. Algun ejemplo? Como lo puedo implementar?

Un saludo y gracias
komodo está desconectado   Responder Citando
Antiguo 09-mar-2008, 10:30   #2 (permalink)
Peterpay tiene algunos puntos positivos de karma
 
Avatar de Peterpay
 
Fecha de Ingreso: septiembre-2007
Ubicación: Mexico
Mensajes: 2.044
Enviar un mensaje por MSN a Peterpay Enviar un mensaje por Skype™ a Peterpay
Re: Aplicación con diferentes idiomas.

http://www.codeproject.com/KB/cs/mul...lications.aspx

revisa ese ejemplo basico

Pues requieres crear Assemblies Satelites para hacer ello.
No es nada que un archivo de recursos por idioma.

Y de ahi asingar con los DataBids a cada control cada propiedad q requiera el idioma.

saludos
peter
Peterpay está desconectado   Responder Citando
Antiguo 09-mar-2008, 11:03   #3 (permalink)
komodo no se puede cailificar en este momento
 
Fecha de Ingreso: noviembre-2006
Mensajes: 421
Re: Aplicación con diferentes idiomas.

Gracias por tu rápida contestación. Revisare el link y haver si me salgo con la mia :)

Unm saludo!
komodo está desconectado   Responder Citando
Antiguo 10-mar-2008, 11:42   #4 (permalink)
komodo no se puede cailificar en este momento
 
Fecha de Ingreso: noviembre-2006
Mensajes: 421
Re: Aplicación con diferentes idiomas.

Hola de nuevo! Eso sirve para un win forms hecho en VB .NET 2003? He probado de implementarlo pero me salen errores por todas partes.. Te explico mejor, tengo un menu en el que hay una pestaña idioma y tengo diferentes opciones, me gustaria que al apretar en algun idioma me traduzca toda la aplicación. He visto también que se puede hacer con un XML pero todo lo que consigo de ejemplos no me ha funcionado. Alguna idea?

Saludos y gracias de nuevo
komodo está desconectado   Responder Citando
Antiguo 10-mar-2008, 17:35   #5 (permalink)
komodo no se puede cailificar en este momento
 
Fecha de Ingreso: noviembre-2006
Mensajes: 421
Re: Aplicación con diferentes idiomas.

He encontrado un ejemplo que utiliza una bbdd access, el problem es que esta en VB 6. En el siguiente enlace está el ejemplo:

http://www.recursosvisualbasic.com.a...je-con-ado.htm

Yo lo he intentado adaptar para utilizarlo en .NET, el resultado es el siguiente:
Cita:
Sub Cargar_Valores(ByVal Lenguaje As String)

Dim seleccion As String
Dim scnn As String
Dim El_Control As Control
Dim i As Integer
scnn = "DSN=Access-vb;DBQ=" & Application.StartupPath & "\idiomas\language.mdb;DriverId=25;FIL=MS Access;MaxBufferSize=2048;PageTimeout=5;"
seleccion = "SELECT * FROM language WHERE Idioma=" & Lenguaje & ""
da2 = New OdbcDataAdapter(seleccion, scnn)
dt2 = New DataTable
'da2.Fill(dt2)
For i = 0 To dt2.Columns.Count - 1
'Hace referencia al formulario
If dt2.Columns("NombreControl").ColumnName.ToString = El_Control.Name Then
El_Control.Text = dt2.Columns("CaptionDelControl").ColumnName.ToStri ng
Else

El_Control = Me.Controls(dt2.Columns("NombreControl").ColumnNam e.ToString)

' Agregar mas controles si es necesario
If (TypeOf El_Control Is Label) Or _
(TypeOf El_Control Is GroupBox) Or _
(TypeOf El_Control Is CheckBox) Or _
(TypeOf El_Control Is RadioButton) Or _
(TypeOf El_Control Is Menu) Or _
(TypeOf El_Control Is Button) Then

'Asigna el caption
El_Control.Text = dt2.Columns("CaptionDelControl").ColumnName.ToStri ng

ElseIf (TypeOf El_Control Is TextBox) Then
'si es un textbox, RichTexbox etc...
El_Control.Text = dt2.Columns("CaptionDelControl").ColumnName.ToStri ng
Else
'Error
MsgBox("Error: " & Err.Description, vbCritical)
End If
End If
Next

End Sub
Como podreis imaginar no funciona. Como hago para recorrer todos los controles del formulario?

If dt2.Columns("NombreControl").ColumnName.ToString = me.Name Then
me.Text = dt2.Columns("CaptionDelControl").ColumnName.ToStri ng

Como veis necesito decir que si el nombre del control en la bbdd es igual al control del formulario me cambie el text de este control por el de la base de datos. El error esta en el "me" no sé como decir que me coja los controles del formulario, de esta manera me esta haciendo Form1.name y necesito por ejemplo que haga Label1.Name, etc.. asi con todos los controles..

Alguna solución?

Gracias
komodo está desconectado   Responder Citando
Respuesta

No hay votos aún.


Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

BB code is Activado
Caritas están Activado
[IMG] está Activado
Código HTML está Desactivado


La Zona horaria es GMT -6. Ahora son las 21:52.


Message Board Statistics

LinkBacks Enabled by vBSEO 3.1.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93