NOME DO FORM NO CONTROL IN

JCM0867 18/08/2017 19:29:11
#475866
Olá pessoal

Tenho a seguinte situação
For Each controle As Control In [txt-color=#e80000]me[/txt-color].Controls
...
Next

Como coloco o nome do formulário no lugar do [txt-color=#e80000]me[/txt-color]?
Tentei: For Each controle As Control In [txt-color=#e80000]Form1[/txt-color].Controls mas não deu certo.
Como faço?

Grato
JABA 18/08/2017 19:49:42
#475867
Resposta escolhida
1- Talvez você não tenha adicionado a referência do form no lugar que você está fazendo isso.

2 Verifique se o nome do form é esse mesmo.
JCM0867 18/08/2017 20:19:54
#475868
O nome está correto, parece faltar algo antes do Form1
DAMASCENO.CESAR 18/08/2017 20:59:02
#475870
onde está esse código?
é public ou private?
JCM0867 18/08/2017 21:38:27
#475871
Olhem só:
Tenho alguns textbox dentro de um panel1 no Form1

se eu colocar [txt-color=#0000f0] For Each controle As Control In panel1.Controls[/txt-color], Funciona ele acha os Textbox
Se eu colocar [txt-color=#0000f0] For Each controle As Control In me.Controls[/txt-color], ele não acha os textbox
Por isso que testar em colocar o Nome do Form ao invés do me para ver se ele acha os textbox
não sei se entenderam
JABA 19/08/2017 01:59:29
#475874
Os seus TextBoxs não são filhos diretamente do Form, são filhos diretamente do Panel, por isso nunca irá encontrar. Containers servem pra fazer essa separação entre uma coisa e outra.

Ex:

For Each controle As Control In [txt-color=#e80000]Form1[/txt-color].panel1.Controls

GUIMORAES 19/08/2017 09:00:03
#475875
JCM0867

Você deve fazer um método recursivo para encontrar todos os objetos de um formulário, assim, quando tiver um painel por exemplo, ele irá verificar os controles filhos deste painel.
JCM0867 19/08/2017 09:49:31
#475876
Citação:

:
Os seus TextBoxs não são filhos diretamente do Form, são filhos diretamente do Panel, por isso nunca irá encontrar. Containers servem pra fazer essa separação entre uma coisa e outra.

Ex:

For Each controle As Control In [txt-color=#e80000]Form1[/txt-color].panel1.Controls



Eu já tinha notado isso na depuração, achei que pudesse ter uma forma de achar tudo sem se importar se estava ou não no panel.
não dá para fazer recursivo pq o Control está dentro de um lostfocus de um objeto do panel.
Normalmente só tenho um Panel no form, vou fazer o sistema procurar dentro dos panel ao invés no forms, aí resolve.
Tópico encerrado , respostas não são mais permitidas