Foros del Web » Programación para mayores de 30 ;) » .NET »

propiedad text de un boton

Estas en el tema de propiedad text de un boton en el foro de .NET en Foros del Web. Hola a todos. Tengo un pequeño problema con la propiedad text de un button. Resulta que segun el idioma de mi web (español o ingles) ...
  #1 (permalink)  
Antiguo 17/06/2009, 00:42
Avatar de menxucp27  
Fecha de Ingreso: enero-2009
Ubicación: Sagunto
Mensajes: 50
Antigüedad: 15 años, 3 meses
Puntos: 0
propiedad text de un boton

Hola a todos.

Tengo un pequeño problema con la propiedad text de un button.

Resulta que segun el idioma de mi web (español o ingles) en el boton debe aparecer "Detalles" o "Details". Hasta ahi todo bien. Lo que pasa que el button lo tengo dentro de un control <asp:Table>. Busco el button de la siguiente manera:

Dim obj As New Button
obj = FindControl("id_boton")
if ingles then
obj.text = "Details"
else
obj.text = "Detalles"
end if

Pues no me funciona. Me dice "Referencia a objeto no establecida como instancia de un objeto."

alguien puede ayudarme??

gracias de antemano.
  #2 (permalink)  
Antiguo 17/06/2009, 00:58
Avatar de Fuzzylog  
Fecha de Ingreso: agosto-2008
Ubicación: En internet
Mensajes: 2.511
Antigüedad: 15 años, 8 meses
Puntos: 188
Respuesta: propiedad text de un boton

Yo creo que el error está en esta asignación:

obj = FindControl("id_boton")

En todo caso aquí lo que quieres no es establecer que obj sea FindControl("id_boton") sinó que dentro de obj trates de encontrar el control id_boton.

Piensa bien lo que necesitas y busca otras opciones, algo como obj.FindControl("id_boton") o obj.getValue("id_boton").
  #3 (permalink)  
Antiguo 17/06/2009, 01:21
Avatar de menxucp27  
Fecha de Ingreso: enero-2009
Ubicación: Sagunto
Mensajes: 50
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: propiedad text de un boton

Hola...

en la web de msdn-microsof-com (es que no puedo poner el enlace) dice esto:

Dim instance As Button
Dim value As String

value = instance.Text
instance.Text = value

pero no lo entiendo.....

yo he añadido la linea instance = obj.FindControl("id_boton") antes de la asignacion del value, pero en esta asignacion (value = instance.Text) me sigue dando el mismo error "Referencia a objeto no establecida como instancia de un objeto"

si es que no debe ser tan dificil pero no encuentro nada..... :__(

gracias....
  #4 (permalink)  
Antiguo 17/06/2009, 01:47
Avatar de Fuzzylog  
Fecha de Ingreso: agosto-2008
Ubicación: En internet
Mensajes: 2.511
Antigüedad: 15 años, 8 meses
Puntos: 188
Respuesta: propiedad text de un boton

uf, me parece que así no lo vas a poder lograr.

Lo que hace el findcontrol es encontrar un control que contenga la id que tu le envias, y me parece que no tiene nada que ver con lo que pretendes.

A nivel general lo que deberias hacer es:

1. hacer para toda la web un selector de idiomas separado, que lleve el valor del idioma a una variable, llamemosla "Lang", de tipo string.

2. En función del valor de lang, hacer un set del button.text al texto correspondiente al idioma.

Espero que esto te guíe.

----

De todos modos el error ese creo que viene porque has declarado la variable (o referencia) pero no la has instanciado.

Dim Obj As Button
Obj = New Button

(en vez de mezclar como hiciste ==> Dim Obj As New Button)
  #5 (permalink)  
Antiguo 17/06/2009, 03:09
Avatar de menxucp27  
Fecha de Ingreso: enero-2009
Ubicación: Sagunto
Mensajes: 50
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: propiedad text de un boton

Lo de los idiomas es un mundo aparte en la web de mi trabajo....

No se a que te refieres cuando dices "hacer un set del button.text".

Lo que me dices sobre instanciar la variable, ya lo habia probado y sigue diciendome el mismo error en la linea donde busco el control....

A ver... el boton lo tengo dentro de una celda, que a su vez esta dentro de una fila, que a su vez esta dentro de una tabla, que a su vez esta dentro de un grid.... Si estuviera fuera de todo esto no habria ningun problema, segun cada idioma haria button.text = "loquesea", pero como esta metido donde esta... pues no puedo cambiarle la propiedad text.....

voy a seguir buscando.....

graciasssssssss
  #6 (permalink)  
Antiguo 17/06/2009, 03:57
Avatar de menxucp27  
Fecha de Ingreso: enero-2009
Ubicación: Sagunto
Mensajes: 50
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: propiedad text de un boton

ya lo he solucionado

he creado una funcion para la propiedad text, igual que hago con la url que necesito.

<asp:Button ID="btn_detalles" Text='<%# btn_detalles() %>' runat="server" CssClass="btn" PostBackUrl='<%# url_boton() %>' />

Protected Function btn_detalles() As String
Dim rdo As String = ""
Dim id As String = Session("idioma")

If id = "esp" Then
rdo = "Detalles"
ElseIf id = "ale" Then
rdo = "Details"
ElseIf id = "fra" Then
rdo = "Détails"
ElseIf id = "ita" Then
rdo = "Dettagli"
ElseIf id = "por" Then
rdo = "Detalhes"
Else
rdo = "Details"
End If

Return rdo
End Function

Saludosssssssss
  #7 (permalink)  
Antiguo 17/06/2009, 07:25
Avatar de cocu3  
Fecha de Ingreso: diciembre-2007
Mensajes: 235
Antigüedad: 16 años, 4 meses
Puntos: 6
Respuesta: propiedad text de un boton

buen dato, no sabia q se podia meter una función como propiedad de un control, es como en javascript.. xD

saluds
__________________
editor de fotos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:59.