METODOS DE EXTENSAO
Ola galera..
procurei no google, em ingles e portugues e nao encontrei...
é possÃve criar metodos de extensao para formularios?
por exemplo, quero criar um metodo de extensao semelhante ao form.Show() porém, quero que esse método verifique se o form esta aberto ou nao.
cheguei a criar esse método
e chamo assim:
esse método impede de ter que instanciar o formulario para testar se existe.. ele compara o tipo e se existir cria a instancia.
entao gostaria de transforma em método de extensao para facilitar a utilizacao
procurei no google, em ingles e portugues e nao encontrei...
é possÃve criar metodos de extensao para formularios?
por exemplo, quero criar um metodo de extensao semelhante ao form.Show() porém, quero que esse método verifique se o form esta aberto ou nao.
cheguei a criar esse método
public void ShowOrFocus(Type frmType)
{
foreach (Form form in Application.OpenForms)
{
if (form.GetType().Equals(frmType))
{
form.Focus();
return;
}
}
Form frmNovo = (Form)Activator.CreateInstance(frmType);
frmNovo.Show();
}
e chamo assim:
ShowOrFocus(typeof(frmClientes));
esse método impede de ter que instanciar o formulario para testar se existe.. ele compara o tipo e se existir cria a instancia.
entao gostaria de transforma em método de extensao para facilitar a utilizacao
Um método de extensão, é como o próprio nome diz, um método que estende algum objeto. Um formulário pode sim conter métodos de extensão, mas para acessá-los, você teria instanciar o formulário. Pelo que entendi, você quer uma maneira de não instanciar o formulário quando já existir uma instância do mesmo, mas sim simplesmente dar o foco à ele, é isso?
isso mesmo.. exatamente isso Kerplunk
Acredito que seria um método de extensao interessante para utilizacao em todo o sistema.
Acredito que seria um método de extensao interessante para utilizacao em todo o sistema.
Você entendeu a parte que diz [Ô]...mas para acessá-los, você teria instanciar o formulário...[Ô]? O que quis dizer é que para fazer isso não vai ter como ser com um método de extensão. Imagine a situação:
Você tem uma gaveta chaveada. A chave, está dentro dela e o que você quer é pegar a chave de dentro da gaveta...
Para fazer o que você quer, provavelmente seria uma classe estática com um método estático e não um método de extensão.
Você tem uma gaveta chaveada. A chave, está dentro dela e o que você quer é pegar a chave de dentro da gaveta...
Para fazer o que você quer, provavelmente seria uma classe estática com um método estático e não um método de extensão.
verdade... obrigado pela ajuda..
vou fazer isso
vou fazer isso
Tópico encerrado , respostas não são mais permitidas