COMO ACESSAR TEXTBOX DE UMA FUNCAO STATIC?
Implementei a solução do OCELOT (interface) e ficou perfeito. Agora está tudo funcionando como eu preciso.
Obrigado a todos pela grande ajuda.
Nota: Ocelot se puder enviar um exemplo dessa implementação que citou do menuStrip e Toolstrip eu agradeço, pois vai ser muito útil também.
Citação:Alessandro e OCELOT - acredito que ambas as soluções de vocês são excelentes e resolvem muito bem meu problema. Porém seria possÃvel vocês explicarem qual a difernça entre as duas soluções, usar Interface ou Classe Intermediária?
Importanta: Não quero criar nenhum problema entre os dois colegas, de qual solução é melhor etc.., mas como são duas formas bem diferentes, acredito que haja situações onde um seja melhor e em outras a segunda seja mais interessante. Assim poderia saber quando empregar uma ou a outra.
sem problemas, apenas para esclarecimento se ver o meu exemplo coloquei sua função em uma classe onde ela será herdada pelos seus forms ou outras classes não ficando incluida a um formulário pois se a necessidade utilizar outra vez em um outro formulário basta apenas importala para seu método e não sendo necessário replicar.
Dessa forma fica seu aplicativo caso necessário mudança nessa função ela será para todos os lugares onde você a utilizar............
Retirando assim o temido problema de REDUNDÂNCIA de processos/funções............
O que fiz basicamente é OOP.
Veja....
Terei por exemplo uma função (Método) na classe separada que irá acionar os controles do form1 por exemplo
No MDI Pai eu incluà a chamada dessa função no botão da barra de atalho, porém ele não permitiu acessar os controles do form1.
Posso ter feito algo errado, mas segui o modelo que mandou e não deu certo. Já com a interface funcionou.
Quanto ao exemplo do Merge não tive tempo de fazer ele antes, coloquei ele em anexo agora. O MenuStrip é bem simples, ele é automático só precisando que o menu esteja definido como o MainMenuStrip do Form, já os ToolStrip precisa ser chamado manualmente o merge, é bem simples e eu fiz no exemplo usando uma interface para ficar mais fácil de dizer quando o form tem toolbar ou não.
Abra os forms pelo menu Janelas e repare como os toolbars e menus que estão disponÃveis mudam quando o foco do form filho muda, mostrando os menus que são do pai mais os que são do filho com o foco, e os eventos funcionam normalmente onde foram declarados. Repare também que quando está com o foco no frmFilho1 aparece um novo item dentro do [Ô]Outro Menu[Ô]
Detalhe que tem que mudar o Visibility do Menu e do Toolbar nos forms vilhos para False ou então eles aparecem vazios dentro do filho quando se executa o programa.
Fui abrir o projeto e apresentou dois problemas:
Os forms não abrem pois dá esse erro:
Type System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a cannot be located.
Já a Classe IMergeMenu não está presente no projeto.
De qualquer forma tirei o IMergeMenu do projeto e converti ele para o Framework 3.5, o que deve deixar o projeto abrir até no VS.Net 2008
Citação:Não testei aqui o exemplo do Alessandro, mas pelo que vi do código ele fez mais um exemplo de como usar funções estáticas reusáveis em uma classe externa para limpar campos por exemplo, o meu exemplo era do uso de botões do toolbar no form pai chamando funções no form filho.
Este projeto que fiz esta em VS2010 e Framework 4.0.................
Se há necessidade de Downgrade me avisa pois faço em Vs2008 ou VS2005 com os respectivos Framework 4.0 3.5 3.0 2.0......
Boa Sorte
Vou estudar e será de grande ajuda, obrigado.
AJSO fiz a alteração direto no seu projeto, criando um novo botão na toolbar do MDI e ajustando os eventos e códigos, e então funcionou perfeitamente também. Acho que fiz algo errado ao implementar no meu sistema. Vou rever e será muito útil esse uso genérico. Obrigado.
PS. Num só tópico [Ô]matei 3 Leões[Ô] (rs).
Infelizmente não tenho como repartir a pontuação do tópico, só permite uma pessoa, então vou ser justo e seguir o seguinte critério:
Primeiro que respondeu e quem sanou dois problemas no mesmo tópico que foi o OCELOT. Desculpe AJSO, mas a limitação é do site que só permite selecionar uma resposta.
Abraço a todos.