La Web del Programador: Comunidad de Programadores
 
    Pregunta:  44508 - ¿CóMO SABER DESDE QUE FORMULARIO SE HA LLAMADO AL ACTUAL?
Autor:  Miguel Angel
El problema es el siguiente:

Desde un formulario de entrada de datos sellama a otro, por ejemplo, para seleccionar un país, entonces una vez seleccionado se envía la selección al formulario llamante.

Problema: ¿cómo sé desde que formulario se le llamo para que envíe los datos seleccionados correctamente?

Lo hago pero de una forma que me parece un poco chapuzas pero funciona. Me gustaría saber si hay alguna forma de saber la instancia de formulario desde la que se ha llamado exactamente para poder referenciarla directamente desde el formulario llamado.

Un poco lioso, ¿no?.
Gracias!!

  Respuesta:  Edgar Molina
¿No seria mas facil hacer una funcion que instancie el formulario y dependiendo de determinado evento se le asigne el valor a la funcion?

  Respuesta:  Emilio Salvay
Hola, mira, yo lo hago de una forma tambien un poco complicada, de todos modos te comento como es, quiza te ayude.
Desde el formulario que llama, al momento de crear la instancia indico al creado (en tu caso formPais) que el dueño es quien llama, es decir

desde el formulario que llama

Private Sub btnAgregarPais_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAgregarPais.Click
Dim formPais As New frmPais()
formPais.Owner = Me
formPais.ShowDialog()
End Sub

Despues en el form pais (el formulario llamado), al seleccionar lo que hago en enviar el resultado al owner

Dim formPac As frmPaciente
formPac = CType(Me.Owner, frmPaciente)
formPac.paisSeleccionado(me.cmbPais.text)

Si despues conoces o aprendes alguna forma mas sencilla por favor comunicamela. Suerte.
Emilio