WindowsForms nada mais é do que você desenvolver uma
aplicação que ficará instalada diretamente no desktop do usuário. Essa aplicação
só “funcionará” em ambientes com sistema operacional Windows. Porém existem algumas
formas de se emular essa aplicação em outros sistemas, como Mac O.S e Linux por
exemplo.
Na tela New Project, adicione um projeto do tipo “Windows” e
escolha a opção Windows Forms Application. Como no exemplo abaixo:
Ao criar o projeto a
tela apresentada será essa abaixo:
O desenvolvimento de WindowsForms segue a mesma linha do
desenvolvimento Web. Temos as guias:
- ToolBox - onde estão os controles disponíveis para utilização
- DataSources – Local onde é possível criar e gerenciar um banco de dados
- Solution Explorer – Representa a estrutura do seu projeto, arquivos, referências, etc.
- Properties – local onde é possível alterar a uma propriedade especifica de um controle, de um form ou até mesmo criar um evento para uma ação.
- Server Explorer – local onde você pode criar uma conexão com um banco de dados já existente
Sempre que criar um novo projeto, por padrão, um
formulário é criado. Nesse caso o From1. O formulário é o local onde os
controles serão apresentados para o usuário final.
Por exemplo, vou selecionar na ToolBox o controle TextBox e
arrastar para o formulário e pressionar o F5 para executar. Veja abaixo:
No exemplo abaixo eu vou demonstrar como utilizar os
controles mais básicos do WindowsForm.
Utilizando o mesmo formulário, vou adicionar um controle do
tipo Button. E na guia de propriedades vou alterar a propriedade Text para “OK”
e a propriedade Name para “BtnOK”. Teremos
a seguinte tela:
Agora vou dar um duplo click sobre o botão. E o Visual Studio(VS) direciona para a o arquivo Form1.cs, local onde é feita toda a programação do formulário. Por padrão o C# sempre cria o construtor padrão do formulário. Como no exemplo abaixo:
public Form1()
{
InitializeComponent();
}
Mas ao dar o duplo click no botão “BtnOK” o VS adiciona o
seguinte evento ao código
private
void BtnOK_Click(object
sender, EventArgs e)
{
}
Sempre que o usuário clicar no botão ok, esse evento será
invocado.
Vou alterar esse evento
e adicionar o seguinte código:
private
void BtnOK_Click(object
sender, EventArgs e)
{
MessageBox.Show(textBox1.Text);
}
Nesse código acima eu estou dizendo para o sistema exibir
uma caixa de mensagem, para o usuário final, com o conteúdo do campo de texto.
Ao pressionar F5, digite um valor na caixa de texto e click
em ok. Veja o resultado:
No exemplo abaixo eu vou adicionar dois campos de texto, TextBox1 e TextBox2. Com o valor digitado pelo usuário eu vou realizar uma soma e imprimir o resultado na tela. Veja abaixo como ficou a tela:
Vou dar um duplo click no botão ok e colocar o código abaixo:
double
x =0;
double
y = 0;
double
resultado = 0;
if(double.TryParse(textBox1.Text,out x) && double.TryParse(textBox2.Text,
out y))
{
resultado
= x + y;
MessageBox.Show(resultado.ToString());
}
No código acima eu converto o valor digitado no TextBox1
para Double, pois originalmente ele é uma string e não é possível realizar cálculos
com texto. O mesmo foi feito para o TextBox2.
Na variável resultado atribui o
resultado da soma dos dois campos e exibi para o usuário final.
Ao executar o projeto e preencher os campos ao clicar no
botão ok o resultado é o seguinte:
Para identificar cada campo podemos utilizar o controle tipo
Label. Alterando a propriedade nome. No exemplo abaixo eu adicionei dois títulos,
um para o valor X e outro para o valor Y. Veja o Exemplo:
Esse é um exemplo bem simples e para quem esta começando.
Em breve vou colocar um outro exemplo mais
completo.
Olá amigo, estou tentando aprender C# na marra também, li um comentário seu em outro blog e vim até aqui para ver se consigo uma ajudinha com um projeto que estou tentando desenvolver.
ResponderExcluirA minha dificuldade é preencher um Datagridview que fica dentro de um Panel2 através de um form carregado num Panel1.
Já tentei algumas soluções e por último tentei esta aqui mas não funciona:
Código do botão do form2
string[] dados = { conta, cbox_cliente.Text, cbox_evento.Text, data };
novoform1 = new Form1();
novoform1.dgv_eventos.Rows.Add(dados);
novoform1.dataGridView1.Refresh();
Alguma dica que possa me dar?
Obrigado. Sucesso!