¿Cómo llenar una variable en el formulario un tiempo en el Formulario B?

StackOverflow https://stackoverflow.com/questions/20353769

  •  25-08-2022
  •  | 
  •  

Pregunta

Tengo un proyecto, donde se llama a un formulario de mago para hacer un proyecto. Al final del asistente, quiero devolver un objeto 'mundial' a una variable en la forma principal. Pero si le doy la forma principal a través del constructor, no puedo acceder a sus métodos o propiedades. ¿Estoy haciendo algo mal?

Aquí está mi código:

forma principal

private void newToolStripMenuItem_Click(object sender, EventArgs e)
{
    this.NewProject();
}

private void NewProject()
{
    var myForm = new ProjectWizard(this);
    myForm.Show();
}

Código de formulario del asistente:

public ProjectWizard(Form form)
{
    InitializeComponent();
    MainForm = form;
}

private void finishButton_Click(object sender, EventArgs e)
{
    //World world = new World();
    //MainForm.CurrentWorld = world;
}

Gracias por adelantado.

¿Fue útil?

Solución

Solo necesitas hacer CurrentWorld public o internal sobre el MainForm clase. Honestamente, ¡estás haciendo todo lo demás bien!

ACTUALIZAR: También asegúrese de que el MainForm campo privado declarado en Form1 es del tipo MainForm Y no solo Form. Entonces, cambie el constructor A Tidge también:

public ProjectWizard(MainForm form)
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top