Como: Consumir eventos em um aplicativo de formulários da Web

Um cenário comum em aplicativos de formulários web é preencher um página da Web com controles e em seguida, executar uma ação específica com base no que controle que o usuário clica. Por exemplo, um controle System.Web.UI.WebControls.Button gera um evento quando o usuário clica nele no formulário. Ao manipular o evento, seu aplicativo pode executar a lógica apropriada do aplicativo apropriado para esse clique.

Para obter informações sobre o modelo de programação de formulários web, consulte Programando Formulários Web.

Para tratar um evento de clique de botão em uma página da Web

  1. Crie uma página de formulário Web (página ASP.NET) que tem um controle Button.

    <asp:Button id = "Button" Text = "Click Me" runat = server/>
    
  2. Definir um manipulador de eventos que corresponde a Click evento delegar assinatura. O Click evento usa o EventHandler classe para o tipo de delegado e a EventArgs classe para os dados do evento.

  3. Definir o OnClick o atributo na Button elemento para o método de manipulador de eventos.

    <asp:Button
            id = "Button" OnClick = "Button_Click" Text = "Click Me" 
            runat = server/>
    

    Observação

    Um desenvolvedor de aplicativos de formulários Web pode ligar o evento declarativamente, conforme mostrado, sem trabalhar diretamente com o representante.O ASP.Estrutura da página NET gera o código que cria uma instância de EventHandler que faz referência Button_Click e adiciona essa instância do delegate para o clique em evento da botão instância.

Exemplo

A seguinte página de formulário Web manipula o evento Click de Button para alterar o cor do plano de fundo da TextBox.

Observação de segurançaObservação sobre segurança

Este exemplo tem uma caixa de texto que aceita entrada do usuário, que é uma ameaça potencial de segurança.Por padrão, páginas Web ASP.NET validam se as entradas de usuário não incluem scripts ou elementos HTML.Para obter mais informações, consulte Visão geral de scripts maliciosos.

<html>
   <script language="VB" runat=server> 
      Private Sub Button_Click(sender As Object, e As EventArgs)
         Box.BackColor = System.Drawing.Color.LightGreen
      End Sub
   </script>
   <body> 
      <form method="POST" action="Events.aspx" runat=server>   
          Click the button, and notice the color of the text box.<br><br>
         <asp:TextBox 
         id = "Box" Text = "Hello" BackColor = "Cyan" runat=server/>             
         <br><br>       
        <asp:Button
        id = "Button" OnClick = "Button_Click" Text = "Click Me" 
        runat = server/>         
      </form>
   </body>
</html>
<html>
   <script language="C#" runat=server> 
      private void Button_Click(object sender, EventArgs e){
         Box.BackColor = System.Drawing.Color.LightGreen;
               }
   </script>
   <body> 
      <form method="POST" action="Events.aspx" runat=server>   
          Click the button, and notice the color of the text box.<br><br>
         <asp:TextBox 
         id = "Box" Text = "Hello" BackColor = "Cyan" runat=server/>             
         <br><br>       
        <asp:Button
        id = "Button" OnClick = "Button_Click" Text = "Click Me" 
        runat = server/>         
      </form>
   </body>
</html>

Compilando o código

Para ver como funciona a manipulação de eventos em formulários web, salve a página de exemplo em um arquivo com extensão .ASPX (que indica que o arquivo é uma página ASP.NET) e a implemente em qualquer lugar no seu diretório raiz virtual do IIS.

Consulte também

Conceitos

Eventos e representantes

Consumindo Eventos

Gerando um evento

Outros recursos

Tratamento e disparada de eventos