Tratando eventos em formulários
Aprenda a tratar interações do usuário, como cliques em botões e envios de formulários
Tratando eventos em formulários é uma aula grátis de C# Academy no CoddyKit. Esta é a aula 3 de 3. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de C# Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de C# Academy inclui 3 aulas no total.
O que são eventos?
O que são eventos?
Eventos são ações ou ocorrências às quais um programa pode responder, como o clique em um botão, o movimento do mouse ou a entrada de texto. O tratamento de eventos permite definir como seu aplicativo deve reagir a essas ações.
Ponto principal: o Windows Forms usa programação orientada a eventos para responder às ações do usuário.

Compreendendo os eventos
O que são eventos?
Eventos são ações ou ocorrências às quais um programa pode responder, como o clique em um botão, o movimento do mouse ou a entrada de texto. O tratamento de eventos permite definir como seu aplicativo deve reagir a essas ações.
Ponto principal: o Windows Forms usa programação orientada a eventos para responder às ações do usuário.
Assinando eventos
Assinando eventos
Para tratar um evento, você precisa assiná-lo atribuindo um método (manipulador de eventos) que será executado quando o evento ocorrer. Exemplo:
using System;
using System.Windows.Forms;
class Program : Form {
static void Main() {
Application.Run(new Program());
}
public Program() {
Button button = new Button() {
Text = "Click Me",
Left = 100,
Top = 50
};
button.Click += Button_Click;
Controls.Add(button);
}
private void Button_Click(object sender, EventArgs e) {
MessageBox.Show("Button was clicked!");
}
}
Eventos comuns
Eventos comuns
Veja alguns eventos comuns no Windows Forms:
- Click: acionado quando um botão ou outro controle clicável é clicado.
- TextChanged: acionado quando o texto em uma caixa de texto é alterado.
- MouseEnter: acionado quando o ponteiro do mouse entra em um controle.
- KeyDown: acionado quando uma tecla é pressionada enquanto um controle está em foco.
Ponto principal: cada evento tem uma finalidade específica, e você pode usar vários eventos para melhorar a interatividade.
Adicionando manipuladores de eventos no Designer
Adicionando manipuladores de eventos no Designer
Você pode adicionar manipuladores de eventos usando o Designer do Windows Forms:
- Selecione o controle no Designer.
- Abra a janela Propriedades e vá até a guia Eventos (ícone de raio).
- Clique duas vezes no evento desejado (por exemplo,
Click) para gerar um manipulador de eventos no código.
Dica: essa abordagem é mais rápida para adicionar manipuladores de eventos a vários controles.
Argumentos de eventos
Argumentos de eventos
Os manipuladores de eventos geralmente incluem um parâmetro EventArgs que fornece informações adicionais sobre o evento. Exemplo:
using System;
using System.Windows.Forms;
class Program : Form {
static void Main() {
Application.Run(new Program());
}
public Program() {
TextBox textBox = new TextBox() {
Left = 50,
Top = 50,
Width = 200
};
textBox.TextChanged += TextBox_TextChanged;
Controls.Add(textBox);
}
private void TextBox_TextChanged(object sender, EventArgs e) {
TextBox textBox = (TextBox)sender;
Console.WriteLine("Text changed to: " + textBox.Text);
}
}
Desafio prático
Desafio prático
Crie um aplicativo Windows Forms com:
- Um botão que exiba uma mensagem quando for clicado.
- Uma caixa de texto que registre as alterações de texto no console.
- Um rótulo que seja atualizado quando o ponteiro do mouse entrar em uma área específica.
Exemplo:
using System;
using System.Windows.Forms;
class Program : Form {
Label label;
static void Main() {
Application.Run(new Program());
}
public Program() {
Button button = new Button() {
Text = "Click Me",
Left = 50,
Top = 50
};
button.Click += (sender, e) => MessageBox.Show("Button clicked!");
Controls.Add(button);
TextBox textBox = new TextBox() {
Left = 50,
Top = 100,
Width = 200
};
textBox.TextChanged += (sender, e) => Console.WriteLine("Text changed to: " + textBox.Text);
Controls.Add(textBox);
label = new Label() {
Text = "Hover over me",
Left = 50,
Top = 150,
Width = 150
};
label.MouseEnter += Label_MouseEnter;
Controls.Add(label);
}
private void Label_MouseEnter(object sender, EventArgs e) {
label.Text = "Mouse is here!";
}
}
Práticas recomendadas para o tratamento de eventos
Práticas recomendadas para o tratamento de eventos
Estas são algumas práticas recomendadas:
- Use nomes significativos para os métodos dos manipuladores de eventos.
- Evite escrever lógica excessiva diretamente nos manipuladores de eventos; em vez disso, chame outros métodos.
- Desconecte os manipuladores de eventos quando eles não forem mais necessários para evitar vazamentos de memória.
Dica: teste seus manipuladores de eventos para garantir que funcionem conforme esperado em todos os cenários.
Muito bem!
Muito bem!
Parabéns! Você aprendeu a tratar eventos no Windows Forms para tornar seus aplicativos interativos. Na próxima lição, criaremos um aplicativo de calculadora simples para aplicar o que você aprendeu. Vamos continuar programando!
Clique em Continuar para passar à próxima lição.

Perguntas Frequentes
A aula “Tratando eventos em formulários” é grátis?
Sim — o texto completo de “Tratando eventos em formulários” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de C# Academy, atualize para CoddyKit PRO. O curso de C# Academy inclui 3 aulas no total.
O que vou aprender em “Tratando eventos em formulários”?
Aprenda a tratar interações do usuário, como cliques em botões e envios de formulários Você pratica C# Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar C# Academy?
Nenhuma experiência prévia é necessária. C# Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 3 de 3.
Quanto tempo leva a aula “Tratando eventos em formulários”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de C# Academy?
Sim. Cada aula de C# Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Introdução ao Windows Forms
- Projetando interfaces de usuário
- Tratando eventos em formulários