none
Não consigo pegar o nome do meu usuário e jogar em outro formulário RRS feed

  • Pergunta

  • Então pessoal, eu criei uma tela de login que o usuário tenha que digitar o usuário, senha e nível de acesso, e eu queria pegar o que ele digitou em usuário e jogar direto em outro formulário quando esse formulário fosse aberto, fiz o seguinte código que não apresentar nenhum erro, porém não funciona. OBS: O MainWindow é minha tela de login e o Serviço é onde eu quero jogar meu usuário. Será mostrado só a parte do código que é relevante.

    No formulário MainWindow

    public string GetUsuario = "";

    if (campo.Rows.Count > 0)
                    {
                      
                        if (cmbNivel.Text == "Administrador")
                        {


                            GetUsuario = txtUsuario.Text;
                            menuPrincipal menu = new menuPrincipal();
                            menu.FuncionarioAtivado();
                            menu.ShowDialog();                       
                            Close();
                            
                        }
                        else if (cmbNivel.Text == "Usuário")
                        {


                            GetUsuario = txtUsuario.Text;
                            menuPrincipal menu = new menuPrincipal();                     
                            menu.ShowDialog();                       
                            Close();


                        }
                      
                    }
                    else
                    {
                        MessageBox.Show("Usuário, Senha ou Nível estão incorretos.");
                    }

    No formulário Serviço

    private void serviço_Load(object sender, EventArgs e)
            {


                MainWindow mwindow = new MainWindow();
                txtUsuario.Text = mwindow.GetUsuario.ToString();
                
                
                txtHora.Text = DateTime.Now.ToShortTimeString();
                txtData.Text = DateTime.Now.ToShortDateString();

            }

    Obrigado desde já!!!


    quarta-feira, 29 de maio de 2019 18:50

Respostas

  • Felipe,

    Espero conseguir te ajudar.

    No formulário de serviço, você está chamando

         MainWindow mwindow = new MainWindow();
                txtUsuario.Text = mwindow.GetUsuario.ToString();

    Repare que voce está instanciando um novo MainWindow, então nesse momento ele sempre estará vazio. Sem nenhum campo preenchido.

    Sem o resto do codigo não consigo te ajudar mais, mas lembre-se, sempre que se instancia algo, as propriedades virão com seus valores defaults.

    Espero ter ajudado!

    quinta-feira, 30 de maio de 2019 02:32

Todas as Respostas

  • Felipe,

    Espero conseguir te ajudar.

    No formulário de serviço, você está chamando

         MainWindow mwindow = new MainWindow();
                txtUsuario.Text = mwindow.GetUsuario.ToString();

    Repare que voce está instanciando um novo MainWindow, então nesse momento ele sempre estará vazio. Sem nenhum campo preenchido.

    Sem o resto do codigo não consigo te ajudar mais, mas lembre-se, sempre que se instancia algo, as propriedades virão com seus valores defaults.

    Espero ter ajudado!

    quinta-feira, 30 de maio de 2019 02:32
  • Eu consegui resolver, era exatamente isso, eu criei outro método construtor com uma sobrecarga de uma variável e fui passando o GetUsuario até chegar ao meu formulário serviço
    quinta-feira, 30 de maio de 2019 14:31