• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

JLDR

[C#]Dúvida sobre como passar uma Form como referência.

3 mensagens neste tópico

Então a dúvida é a seguinte:

Tenho a form inicial (Form1) que arranca naturalmente com a execução do programa.

Segundo me parece, esta form não tem 'nome' do objecto que instanciou a classe Form1, uma vez que no Main da classe Program ela é executada com:

Application.run (new Form1());

Dúvida: Como é que faço para passar esta Form1 como referência para um método de outra classe?  :)

Exemplo:

classe ClasseGeral
{
     public void AlteraText(ref Form janela)
     {
            janela.text="Titulo da janela alterado.";
     }
}



// E DEPOIS NO ARRANQUE DO PROGRAMA...

private void Form1_Load(object sender, EventArgs e)
{
     ClasseGeral g = new ClasseGeral();
     g.AlteraText(ref <form actual>);
}

Depois de instanciar outras forms, é claro que é simples. Mas esta Form1 que é executada no arranque, como é que a posso passar como referência?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

é o this

não sei se dá pra passar ref this, se não der

fazer Form f = this e passas o f

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

LOL... realmente...

As voltas que dei com o This e não cheguei lá.

Não é possível passar o This como referência, mas como explicaste já funciona.

Obrigado. :)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora