none
Como carregar um form passando parâmentro RRS feed

  • Pergunta

  • Olá,

     

    Estou precisando carregar um form passando por parâmentro o nome dele.

     

    Em minha aplicação tem um textbox onde o usuário informa o atalho para o form, exemplo 11, apartir daí uma rotina vai no banco e me retorna o name desse formulário.

     

    De posse do name, como faço para abrir esse formulário ?

     

    help me

     

    Obrigado...

    sexta-feira, 6 de julho de 2007 14:34

Respostas

  • Amigo acho que falei falei na mensagem anterior e somente agora entendi o que vc quer mesmo deixa eu ver se é isso mesmo vc tem uma tabela com codigo e nome do form vc quer chamar um form e passar para uma rotina o codigo do form que esta na tabela do Banco de Dados e a partir desse codigo vc quer um codigo que abra o form que vc informou o codigo certo ????
    Bom se for isso testa dessa maneira eu não fiz nada acessando Banco de Dados é uma torina exemplo e bem simples que espero te ajudar

    Fiz o seguinte para testar criei dosi forms Form1 e Form2
    Dentro do Form1 crieie uma variavel publica ao form logo no inicio do construtor do codigo

    public Form vNomeForm;

    Em seguida coloquei um textbox e um botão e dentro do botão o seguinte codigo
                if (textBox1.Text == "11")
                {
                    vNomeForm = new Form2();
                    vNomeForm.ShowDialog();
                }
                else
                {
                    MessageBox.Show("Form não existe", "",MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    textBox1.Text = ""; textBox1.Focus();
                }

    Dessa maneira funcionou chamou o form2 certinho agora vc terá que acertar no seu codigo para qdo retornar o nome do form vc terá que deixalo escrito na tabela da mesma form que seu nome no codigo do sistema ou seja o mesmo nome que ele está no projeto pois é case sensitive no caso essa linha vNomeForm = new Form2(); vc terá que colocar uma varivel de retornopara que exista o mesmo nome da mesma forma que o arquivo esta nomeado

    Nossa espero não ter viajado e piorado ainda mais ... mas estou na correria aqui e procurei lhe ajudar da melhor maneira possivel assim como muitos ja me ajudaram aqui também
    Qualquer coisa posta ai novamente
    Um abraço

    segunda-feira, 16 de julho de 2007 16:34

Todas as Respostas

  • Bom se eu entendi bem faça assim

    Form1

       Form2 vFrm2 = New Form2();

       vFrm2.ShowDialog();

       vFrm2.Text = TextBox1.Text();

     

    Veja se isso te ajuda ão testei isso no .NET mas deve ser isso mesmo se bem tbm entendi sua duvida ...

    segunda-feira, 9 de julho de 2007 13:03
  • No formulário você deve mudar o construtor dele, para obrigar a passagem do parâmetro, utilize o código abaixo:

     

    public partial class Form1 : Form

    {

    public Form1(string strNome)

    {

    InitializeComponent();

    this.Text = strNome;

    }

    }

     

    Espero ter ajudado.

     

    []´z

     

     

    quinta-feira, 12 de julho de 2007 20:29
  • Value Junior, mas não funcionou Sad

     

    Mesmo assim, valeu por ter respondido.

    segunda-feira, 16 de julho de 2007 04:44
  • Há uma resposta de outro amigo logo acima da minha nem essa deu certo ??

    Agora vc pode fazer alguma coisa para contornar isso ... tipo assim

    Crie um metodo em uma classe que receba como parametro o codigo_do_form por exemplo e dentro desse metodo vc faz  busca no Banco de Dados e retorna o nome do form executando isso no LOAD do fomrm destino

    Por exemplo
    String nomeForm(Int pCodigo)
    {
       < ... codigo de busca ... >
       return vNome;
    }


    Vc pode criar uma variavel publica ao projeto todo e nela passar o codigo fo form que será carregado e dai passa essa variavel para o metodo que carrega o nome do Form que será carregado ...

    Bom isso que lhe escrevi seria uma forma de ajudar a contornar o "problema" entende ... espero ter ajudado em algo

    Valeuuuu flwwwwwwwwwwwwwwww
    segunda-feira, 16 de julho de 2007 16:18
  • Amigo acho que falei falei na mensagem anterior e somente agora entendi o que vc quer mesmo deixa eu ver se é isso mesmo vc tem uma tabela com codigo e nome do form vc quer chamar um form e passar para uma rotina o codigo do form que esta na tabela do Banco de Dados e a partir desse codigo vc quer um codigo que abra o form que vc informou o codigo certo ????
    Bom se for isso testa dessa maneira eu não fiz nada acessando Banco de Dados é uma torina exemplo e bem simples que espero te ajudar

    Fiz o seguinte para testar criei dosi forms Form1 e Form2
    Dentro do Form1 crieie uma variavel publica ao form logo no inicio do construtor do codigo

    public Form vNomeForm;

    Em seguida coloquei um textbox e um botão e dentro do botão o seguinte codigo
                if (textBox1.Text == "11")
                {
                    vNomeForm = new Form2();
                    vNomeForm.ShowDialog();
                }
                else
                {
                    MessageBox.Show("Form não existe", "",MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    textBox1.Text = ""; textBox1.Focus();
                }

    Dessa maneira funcionou chamou o form2 certinho agora vc terá que acertar no seu codigo para qdo retornar o nome do form vc terá que deixalo escrito na tabela da mesma form que seu nome no codigo do sistema ou seja o mesmo nome que ele está no projeto pois é case sensitive no caso essa linha vNomeForm = new Form2(); vc terá que colocar uma varivel de retornopara que exista o mesmo nome da mesma forma que o arquivo esta nomeado

    Nossa espero não ter viajado e piorado ainda mais ... mas estou na correria aqui e procurei lhe ajudar da melhor maneira possivel assim como muitos ja me ajudaram aqui também
    Qualquer coisa posta ai novamente
    Um abraço

    segunda-feira, 16 de julho de 2007 16:34
  • É isso aê garoto...

     

    Valeu pela ajuda!

    sábado, 28 de julho de 2007 20:45