다음을 통해 공유


방법: Web Forms 응용 프로그램에서 이벤트 사용

업데이트: 2007년 11월

Web Forms 응용 프로그램의 주된 활용 방식은 웹 페이지에 컨트롤을 채운 다음 사용자가 클릭하는 컨트롤에 따라 특정 작업을 수행하는 것입니다. 예를 들어, System.Web.UI.WebControls.Button 컨트롤은 사용자가 웹 페이지에서 해당 컨트롤을 클릭하면 이벤트를 발생시킵니다. 응용 프로그램은 이 이벤트를 처리하여 단추 클릭에 해당하는 적절한 응용 프로그램 논리를 수행할 수 있습니다.

Web Forms 프로그래밍 모델에 대한 내용은 Web Forms 프로그래밍을 참조하십시오.

웹 페이지에서 단추 클릭 이벤트를 처리하려면

  1. Button 컨트롤이 있는 Web Forms 페이지(ASP.NET 페이지)를 만듭니다.

    <asp:Button id = "Button" Text = "Click Me" runat = server/>
    
  2. Click 이벤트 대리자 시그니처와 일치하는 이벤트 처리기를 정의합니다. Click 이벤트는 대리자 형식에 EventHandler 클래스를 사용하고 이벤트 데이터에는 EventArgs 클래스를 사용합니다.

    void Button_Click(object sender, EventArgs e)
    {...}
    
    Sub Button_Click(sender As Object, e As EventArgs)
    ...
    End Sub
    
  3. Button 요소의 OnClick 특성을 이벤트 처리기 메서드로 설정합니다.

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

    Web Forms 응용 프로그램 개발자는 대리자를 직접 사용하지 않고 위와 같이 이벤트를 선언적으로 연결할 수 있습니다. ASP.NET 페이지 프레임워크에서는 Button_Click을 참조하는 EventHandler 인스턴스를 만드는 코드를 생성하여 이 대리자 인스턴스를 Button 인스턴스의 Click 이벤트에 추가합니다.

예제

다음 Web Forms 페이지에서는 ButtonClick 이벤트를 처리하여 TextBox의 배경색을 변경합니다. 이 예제에서 굵게 표시된 요소는 이벤트 처리기 코드와 이 이벤트 처리기가 ButtonClick 이벤트에 어떻게 연결되는지를 보여 줍니다.

보안 정보:

이 예제에는 사용자 입력을 허용하는 텍스트 상자가 있으므로 보안상 위험할 수 있습니다. 기본적으로 ASP.NET 페이지에서는 사용자 입력 내용에 스크립트나 HTML 요소가 포함되어 있지 않은지 유효성을 검사합니다. 자세한 내용은 스크립트 악용 개요를 참조하십시오.

 [C#]
<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>
<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>

코드 컴파일

확장명이 .aspx(파일이 ASP.NET 페이지임을 나타내는 확장명임)인 파일에 예제 페이지를 저장한 후 파일을 IIS 가상 루트 디렉터리의 원하는 위치에 배포하면 Web Forms에서 이벤트 처리가 어떻게 수행되는지 볼 수 있습니다.

참고 항목

개념

이벤트 및 대리자

이벤트 사용

이벤트 발생시키기

기타 리소스

이벤트 처리 및 발생