retornar un valor de un windows form

06/05/2006 - 04:11 por Jose | Informe spam
Como puedo retornar un valor a un windows forms?
Gracias de antemano

Preguntas similare

Leer las respuestas

#1 Lucas
06/05/2006 - 11:01 | Informe spam
Es de madrugada cuando te escribo esto, así que espero perdones mi
"lentitud", pero qué quieres decir con eso de "retornar un valor de un
windows form"?

¿Su tamaño?, ¿los controles que tiene?, ¿alguna variable?, ¿...?

¿Podrías ser más explícito?
Respuesta Responder a este mensaje
#2 Luis Miguel Blanco
08/05/2006 - 15:05 | Informe spam
Hola Jose

La ejecución de un formulario no es como la de una rutina de tipo function,
la cual ejecutas y devuelve un valor al punto de código que la llamó. Durante
la ejecución de un formulario, más que devolver un valor, es posible obtener
valores del formulario desde código externo al mismo, siempre y cuando dichos
valores estén accesibles de forma pública: controles, propiedades, etc.

Teniendo en cuenta esto, lo más próximo a devolver un valor de un formulario
a otro sería utilizando un formulario de diálogo. Para probar esto que te
comento, debemos crear un proyecto con dos formularios, en el primero creamos
un botón que abra el segundo como un diálogo, y en el que actúe como diálogo,
ponemos dos botones: uno para aceptar y otro para cancelar. En cada uno de
estos botones asignamos un valor a la propiedad DialogResult del formulario y
esto hará que directamente se cierre el formulario, pero que siga activo, es
decir, que no se destruya su instancia, de forma que desde el formulario que
llamó al diálogo podemos, por ejemplo, recuperar el valor de una
propiedad/variable pública.

Te adjunto el código para que lo pruebes, a ver si se aproxima a lo que
necesitas:

'///////////////////////////////////
Public Class Form1
Inherits System.Windows.Forms.Form

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button1.Click
Dim frm2 As Form2 = New Form2
Dim resultado As DialogResult
resultado = frm2.ShowDialog()
Dim ElValorDialogo As String = frm2.Valor
MessageBox.Show("Resultado del diálogo: " & ElValorDialogo)
End Sub
End Class
'--
Public Class Form2
Inherits System.Windows.Forms.Form

Public Valor As String

Private Sub btnAceptar_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnAceptar.Click
Me.DialogResult = DialogResult.OK
Me.Valor = "Correcto"
End Sub

Private Sub btnCancelar_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnCancelar.Click
Me.DialogResult = DialogResult.Cancel
Me.Valor = "Incorrecto"
End Sub
End Class
'///////////////////////////////////

Espero que te sirva.
Un saludo
Luis Miguel Blanco
http://www.dotnetmania.com


"Jose" wrote:

Como puedo retornar un valor a un windows forms?
Gracias de antemano



email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida