Alura > Cursos de Programação > Cursos de .NET > Conteúdos de .NET > Primeiras aulas do curso Windows Forms com C#: Menus, outros formulários e validação com login e senha

Windows Forms com C#: Menus, outros formulários e validação com login e senha

Recuperando e reorganizando o projeto - Introdução

Olá. Meu nome é Victorino Vila e esta é a continuação do curso de Windows forms, a parte 2, em que vamos dar ênfase em formulários. No curso passado tivemos um primeiro contato com Windows forms, aprendemos o que é um formulário, criamos componentes.

Neste curso vamos dar ênfase de novo a formulários. Vamos aprender como eles navegam entre si, como consigo passar parâmetro para um formulário e retornar parâmetro para formulário pai. Iremos ver também formulários do tipo MDI e formulários user control.

No final, vamos dar ênfase a dialog boxes. São formulários que já conhecemos quando no curso passado criamos message boxes. Iremos aprender a construir nossa própria message box criando um dialog box customizado.

Apesar do treinamento ser com ênfase em formulário, não significa que vamos conhecer novos componentes do Windows forms. Também vamos ser apresentados ao componente menu, para construirmos menus na aplicação. Iremos conhecer o Picture, para colocar uma imagem no formulário, e vamos aprender a manipular o formulário de tabpages, onde tenho várias páginas dentro do tabcontrol.

É isso que vamos ver neste treinamento. Espero que vocês gostem. Um abraço. Até o próximo vídeo.

Recuperando e reorganizando o projeto - Recuperando o ambiente

Vamos iniciar o treinamento? A primeira coisa que você precisa ter é o visual studio .NET preparado para o desenvolvimento de projetos em Windows forms usando o Csharp. Se você está usando o mesmo computador do curso de introdução, não tem problema, você pode continuar. Se você está usando outro computador, você precisa então instalar o visual studio .NET. Você pode ver a instalação no curso de introdução ao Windows forms em Csharp, o curso inicial, e na primeira aula mostro como instalar.

Na minha máquina, já tenho o visual studio preparado para a utilização de projetos Windows forms com Csharp. Esse é o primeiro passo para configurarmos o ambiente do curso. O segundo passo consiste em você baixar o arquivo do link que está aqui embaixo ou no mão na massa. Copiem esse arquivo para o diretório para o curso.

Dentro do diretório, tenho o arquivo solução do projeto. Posso ir no visual studio, seleciono o abrir projeto ou solução, vou no diretório e seleciono o arquivo curso Windows forms slm. Ao fazer isso, ele carregou o projeto. Antes, é importante colocar no modo debug.

Temos a janela com os botões, as figuras, o projeto do curso de introdução a Windows forms usando Csharp. É a partir daqui que vamos continuar este treinamento. O objetivo de vocês é recuperar esse ambiente para fazemos os exercícios práticas deste curso.

Recuperando e reorganizando o projeto - Criando o projeto de bibliotecas

Não sei se vocês se recordam, mas no curso de introdução ao Windows forms com Csharp, quando começamos a criar nossos componentes, eu disse que era interessante usar um padrão para o nome daqueles componentes. Sugerimos colocar um prefixo na frente do nome do componente. Txt para text box, BTN para botões, LBL para labels e FRM para forms. Também disse que o padrão nem sempre é o correto. Não existe padrão correto. Cada empresa adota internamente seu próprio padrão. Mas é importante que haja um.

Outro tipo de boa prática que temos que ter na nossa solução é separar o projeto frontend com o projeto que é cálculo ou regra de negócios. Vamos lembrar que no nosso projeto que fizemos no curso anterior temos uma série de formulários e uma classe. Essa classe tinha a função de validação do CPF. Acabamos separando ela numa classe porque mais de um formulário usava essa função. Ficava muito ruim se a função ficasse dentro do próprio formulário, porque se eu tivesse que fazer uma manutenção nessa função eu teria que fazer nos dois formulários.

Só que tudo isso está em único projeto chamado Windows forms. Nossa intenção é separar o que é cálculo ou regra de negócio do formulário. No nosso caso, vamos tirar fora a classe CLS uteis, vamos colocar em outro projeto só de regras de negócio.

Vou na minha solução cursos Windows forms, botão direito do mouse, seleciono o adicionar novo projeto. Esse projeto não vai ser de Windows forms. Vamos escolher a opção biblioteca de classes .NET framework. Ou seja, uma DLL. É do tipo Csharp Windows e uma biblioteca.

Se você não conseguir achar na sua lista, basta escolher Csharp, Windows e biblioteca. Vou clicar em cima desse tipo, próximo. O nome vai ser curso Windows forms biblioteca. Crio.

Minha solução agora tem dois projetos. O curso Windows forms e o projeto curso Windows forms biblioteca. Ao criar esse projeto, automaticamente ele cria uma classe chamada class1.cs, onde vou colocar o código da minha classe. Entrando nela, tenho o código do lado esquerdo. Vou renomear a classe para cls_uteis.

Na minha classe anterior à original, a única função que utilizamos até o momento foi o valida. Vou copiar esse código, vou no meu cls uteis, selecionar e colar. Não posso apagar a declaração da classe.

Agora posso ir na classe CLS uteis do projeto original e apagar. Ao fazer isso, vou forçar um erro. Se recompilarmos a solução, ele vai me apresentar dois erros. Os dois formulários que chamam a validação do CPF na chamada estão chamando uma função de uma classe que está no próprio projeto, e a classe agora não está mais no projeto de formulários, mas sim no projeto de bibliotecas.

Como então faço para que o meu formulário do meu projeto original enxergue a função que está no projeto bibliotecas? Primeiro, vou no meu projeto curso Windows form. Em referência, tenho as referências do projeto. Adiciono uma e escolho o projeto curso Windows forms biblioteca.

Agora meu projeto consegue enxergar tudo que está no projeto cursos Windows forms biblioteca. Só que ao fazer isso continuo com erro. Se formos no erro, ele mostra uma possível correção para adicionar ao formulário a biblioteca cursos Windows forms biblioteca. Não basta apenas adicionar referência ao projeto. Você tem que no formulário usar essa referência. Ao adicionar a referência ela fica disponível para o projeto. Mas cada formulário vai adicionar a referência se ele quiser ou não.

O erro sumiu. Se eu for no topo do formulário, ele me mostrou o curso Windows forms biblioteca. Então da mesma maneira que adiciono referências a DLLs do .NET framework também posso adicionar referências a bibliotecas de outro projeto dentro da minha solução.

Tenho que fazer a mesma coisa no segundo formulário. Não vou nem usar a sugestão. Posso ir direto e escrever. Agora não tenho erros e posso salvar, recompilar e executar.

Quando ele executa, ele vai no outro projeto, na classe, e testou o CPF. Separei a classe de negócios do projeto de formulários. Uma coisa interessante é que quando fazemos isso, em que tenho o projeto principal, e ele chama o curso Windows forms biblioteca, e formos onde está nosso projeto, tenho duas pastas, mas quando executo tenho o executável do projeto principal. Se eu for ali dentro, tenho o debug e o executável, com também a DLL.

Na hora de publicar para instalar isso na máquina do usuário, não vou somente copiar o executável. Tenho que copiar também a nova DLL, que tem a função de validação do CPF.

Sobre o curso Windows Forms com C#: Menus, outros formulários e validação com login e senha

O curso Windows Forms com C#: Menus, outros formulários e validação com login e senha possui 299 minutos de vídeos, em um total de 74 atividades. Gostou? Conheça nossos outros cursos de .NET em Programação, ou leia nossos artigos de Programação.

Matricule-se e comece a estudar com a gente hoje! Conheça outros tópicos abordados durante o curso:

Aprenda .NET acessando integralmente esse e outros cursos, comece hoje!

Plus

De
R$ 1.800
12X
R$109
à vista R$1.308
  • Acesso a TODOS os cursos da Alura

    Mais de 1500 cursos completamente atualizados, com novos lançamentos todas as semanas, emProgramação, Front-end, UX & Design, Data Science, Mobile, DevOps e Inovação & Gestão.

  • Alura Challenges

    Desafios temáticos para você turbinar seu portfólio. Você aprende na prática, com exercícios e projetos que simulam o dia a dia profissional.

  • Alura Cases

    Webséries exclusivas com discussões avançadas sobre arquitetura de sistemas com profissionais de grandes corporações e startups.

  • Certificado

    Emitimos certificados para atestar que você finalizou nossos cursos e formações.

Matricule-se

Pro

De
R$ 2.400
12X
R$149
à vista R$1.788
  • Acesso a TODOS os cursos da Alura

    Mais de 1500 cursos completamente atualizados, com novos lançamentos todas as semanas, emProgramação, Front-end, UX & Design, Data Science, Mobile, DevOps e Inovação & Gestão.

  • Alura Challenges

    Desafios temáticos para você turbinar seu portfólio. Você aprende na prática, com exercícios e projetos que simulam o dia a dia profissional.

  • Alura Cases

    Webséries exclusivas com discussões avançadas sobre arquitetura de sistemas com profissionais de grandes corporações e startups.

  • Certificado

    Emitimos certificados para atestar que você finalizou nossos cursos e formações.

  • Luri, a inteligência artificial da Alura

    Luri é nossa inteligência artificial que tira dúvidas, dá exemplos práticos e ajuda a mergulhar ainda mais durante as aulas. Você pode conversar com Luri até 100 mensagens por semana.

  • Alura Língua (incluindo curso Inglês para Devs)

    Estude a língua inglesa com um curso 100% focado em tecnologia e expanda seus horizontes profissionais.

Matricule-se
Conheça os Planos para Empresas

Acesso completo
durante 1 ano

Estude 24h/dia
onde e quando quiser

Novos cursos
todas as semanas