1 / 22

이벤트와 이벤트 처리기

웹 폼 이벤트. 이벤트와 이벤트 처리기 이벤트 (event) 는 사전적 의미로 ‘ 사건 , ‘ 일어난 일 ’ , ‘ 행사 ’ 등의 뜻을 가지며 .NET 응용 프로그램에서의 이벤트는 코드로 응답하거나 처리할 수 있는 동작 자체를 의미합니다 . ASP.NET 의 서버 컨트롤과 웹 폼은 여러 상황에 맞게 미리 정의된 이벤트 집합을 개발자에게 제공합니다 .

urbana
Download Presentation

이벤트와 이벤트 처리기

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 웹 폼 이벤트 • 이벤트와 이벤트 처리기 • 이벤트(event)는 사전적 의미로 ‘사건, ‘일어난 일’, ‘행사’ 등의 뜻을 가지며 .NET 응용 프로그램에서의 이벤트는 코드로 응답하거나 처리할 수 있는 동작 자체를 의미합니다. • ASP.NET의 서버 컨트롤과 웹 폼은 여러 상황에 맞게 미리 정의된 이벤트 집합을 개발자에게 제공합니다. • 이벤트 처리기(event handler)는 이벤트에 바인딩되는 메서드입니다. 이벤트가 발생하면 이벤트와 연결된(바인딩 된) 이벤트 처리기가 실행됩니다.

  2. 웹 폼 이벤트 • 모든 이벤트 처리기는 다음과 같이 두 개의 매개변수를 정의합니다. protected void Page_Load(object sender, EventArgs e) { } • 하나는 이벤트가 발생한 개체를 나타내는 개체(sender)이며 다른 하나는 이벤트 관련 정보를 포함하는 이벤트 개체(e)입니다. 특히 두 번째 매개변수는 주로 EventArgs 형식이지만 일부 서버 컨트롤들은 나름대로의 고유 형식을 사용합니다.

  3. 웹 폼 이벤트 • Load 이벤트 • 웹 폼은 웹 폼 고유의 이벤트를 가지고 있습니다. 그 중 가장 사용 빈도가 높은 것은 바로 Load 이벤트입니다. • 페이지 실행 주기 • 아래 표는 웹 폼이 실행될 때 즉, 페이지가 로드 될 때 발생할 수 있는 이벤트를 순서에 따라 정리한 것입니다.

  4. 웹 폼 이벤트

  5. 웹 폼 이벤트

  6. 웹 폼 이벤트 • 사실 ASP.NET 2.0으로 넘어오면서 페이지 로딩 시 발생할 수 있는 이벤트가 많이 추가 되었습니다. 이 말은 페이지 로딩 시 이벤트가 더 세분화 되었다는 뜻이며 개발자가 웹 폼 이벤트를 좀더 세세하게 제어할 수 있게 되었다는 뜻이기도 합니다. • 활성 여부 부분에서 ‘항상’과 ‘다시 게시(postback)’가 있는 데 ‘항상’은 페이지가 로드 될 때 항상 실행되는 이벤트라는 의미이며 ‘다시 게시’는 다시 게시 될 때에만 실행되는 이벤트라는 뜻입니다.

  7. 웹 폼 이벤트 • 위의 표에서 우리가 유심히 봐야 할 이벤트는 다음 세 개로 추려낼 수 있습니다. • Init • Load • PreRender • 이 이벤트들은 개발 시 개발자들이 가장 많이 사용하는 웹 폼 이벤트입니다. 그 중에서도 특히 Load 이벤트가 가장 많이 사용되고 그 다음으로 PreRender 이벤트가 많이 사용됩니다.

  8. 웹 폼 이벤트 • 다음은 웹 폼 이벤트의 주요 실행 순서를 그림으로 표현한 것입니다. [웹 폼 이벤트 실행 순서]

  9. 웹 폼 이벤트 • [예제 5-3] 웹 폼 이벤트 실행 순서

  10. 다시 게시와 페이지 간 게시 • 다시 게시(Postback) • 다시 게시는 자신을 타겟으로 하여 현재 페이지를 다시 서버로 전송하는 프로세스입니다. • 위의 그림을 보면 다시 게시가 자신을 타겟으로 하여 현재 페이지를 다시 서버로 전송하는 행위임을 볼 수 있습니다.단, 사용자가 페이지를 처음 요청하는 것은 다시 게시가 아닙니다. 다시 말해 페이지가 처음 로드 된 것은 다시 게시가 아니라는 말입니다.

  11. 다시 게시와 페이지 간 게시 • [예제 5-4] 다시 게시 예제 • [실습] Button 서버 컨트롤의 Click 이벤트 처리기 등록하기

  12. 다시 게시와 페이지 간 게시 • [예제 5-5] 텍스트 박스에 입력된 값을 출력하는 예제

  13. 다시 게시와 페이지 간 게시 <Vitamin Quiz> 다시 게시와 웹 폼 실행 순서 예제 5-5의 실행 결과는 우리가 예상 했던 결과가 아닙니다. 우리가 예상 했던 결과는 최종적으로 텍스트 박스에 입력한 문자열이 출력되는 다음 그림과 같은 모습입니다. 위와 같이 제대로 된 결과가 나올 수 있도록 Page_Load() 이벤트 처리기를 수정해 봅시다.

  14. 다시 게시와 페이지 간 게시 • 페이지 간 게시(Cross-Page Posting) • 다시 게시(postback)가 자신을 타겟으로 하여 현재 페이지를 다시 서버로 전송하는 프로세스인데 반해 페이지 간 게시는 타겟을 다른 대상 페이지로 하여 현재 페이지를 서버로 전송하는 프로세스입니다.

  15. 다시 게시와 페이지 간 게시 • [예제 5-6] 페이지 간 게시 예제

  16. ASP.NET 2.0 응용 프로그램 구조 • 구성 파일(Configuration File) • 구성 파일은 응용 프로그램이나 웹 사이트에 대한 옵션 설정정보가 들어 있는 .config 확장자를 가진 XML 파일입니다. • Global.asax 파일 • Global.asax 파일은 ASP.NET 응용 프로그램 파일이라고도 하며 ASP.NET에 의해 발생되는 응용 프로그램 수준의 이벤트(웹 응용 프로그램 시작 이벤트, 웹 응용 프로그램 종료 이벤트 등등)를 처리하는 파일입니다.

  17. ASP.NET 2.0 응용 프로그램 구조 • ASP.NET 응용 프로그램 폴더 • ASP.NET 2.0에서는 특정한 콘텐츠 형식에 사용할 수 있는 특정 폴더(예약된 폴더)를 제공하는 데 이것을 ASP.NET 응용 프로그램 폴더라고 합니다. • 다음 표에서는 ASP.NET 응용 프로그램 폴더의 종류 및 일반적으로 각 폴더에 포함되는 파일 형식을 보여줍니다.

  18. ASP.NET 2.0 응용 프로그램 구조

  19. ASP.NET 2.0 응용 프로그램 구조

  20. 이것만은 알고 갑시다 1. 각 문장에 어울리는 적절한 용어를 상자 안에서 골라 보세요. partial 형식 이벤트 처리기 단일 파일 페이지 모델 페이지 간 게시 표현 부분 코드 숨김 페이지 모델 Global.asax 코드 부분 ASP.NET 응용 프로그램 폴더 소스 뷰 PostBackUrl 다시 게시 이벤트 XHTML 디자인 뷰 웹 폼 구성 파일 IsPostBack • ( )은 ASP.NET 페이지(.aspx 파일)와 같은 개념으로서 ASP.NET 프로그래밍을 하기 위해 사용하는 Form(형틀) 또는 기반입니다. • 웹 폼은 웹 폼의 시각적인 부분을 담당하는 ( )과 웹 폼의 내부 로직을 처리하는 ( )으로 구성되어 있습니다. • VS 2005에서는 웹 폼 효율적인 작성을 위해 ( )와 ( )를 제공합니다. • 웹 폼 코드 모델에는 코드 부분, 표현 부분이 동일한 웹 폼에 존재하는 ( )과 코드 부분, 표현 부분이 분리되어 있는 ( )이 존재합니다. • ( )은 HTML을 XML 문서로 정의하는 W3C의 표준으로서 엄격한 문법 체크와 웹 페이지의 스타일 및 내용의 완전한 분리를 통해 특정 시스템, 운영체제, 브라우저에 상관없이 모든 환경에서 호환되는 웹 페이지를 만들 수 있도록 해줍니다. • ASP.NET 2.0 코드 숨김 페이지 모델에서는 C# 2.0에 추가된 ( )라는 새로운 언어 기능을 사용하여 ASP.NET 1.x에서 가지고 있던 상속의 복잡성, 컴파일의 복잡성 문제를 한번에 해결했습니다. • ( )는 .NET 응용 프로그램에서 코드로 응답하거나 처리할 수 있는 동작 자체를 의미합니다.

  21. 이것만은 알고 갑시다 partial 형식 이벤트 처리기 단일 파일 페이지 모델 페이지 간 게시 표현 부분 코드 숨김 페이지 모델 Global.asax 코드 부분 ASP.NET 응용 프로그램 폴더 소스 뷰 PostBackUrl 다시 게시 이벤트 XHTML 디자인 뷰 웹 폼 구성 파일 IsPostBack • ( )는 해당 이벤트 발생 시 실행되는 메서드입니다. • ( )는 자신을 타겟으로 하여 현재 페이지를 서버로 전송하는 프로세스입니다. • ( )는 다른 대상 페이지를 타겟으로 하여 현재 페이지를 서버로 전송하는 프로세스입니다. • Page 개체의 ( ) 속성은 웹 폼의 다시 게시(postback) 여부를 bool 형식의 값으로 반환합니다. • Button 서버 컨트롤을 사용하여 페이지 간 게시를 구현하려면 Button 서버 컨트롤의 ( ) 속성에 타겟 페이지의 경로를 지정하면 됩니다. • ( )은 응용 프로그램이나 웹 사이트에 대한 옵션 설정정보가 들어 있는 .config 확장자를 가진 XML 파일입니다. • ( ) 파일은 ASP.NET 응용 프로그램 파일이라고도 하며 ASP.NET에 의해 발생되는 응용 프로그램 수준의 이벤트를 처리하는 파일입니다. • ASP.NET 2.0에서는 특정한 콘텐츠 형식에 사용할 수 있는 특정 폴더(예약된 폴더)를 제공하는 데 이것을 ( )라고 하며 여기에는 App_Code, App_Data, App_Themes, Bin과 같은 폴더들이 있습니다.

  22. 이것만은 알고 갑시다 2. 다음은 웹 폼의 주요 실행 순서입니다. (1), (2), (3)에 들어갈 적절한 이벤트를 상자 안에서 골라 보세요. Load 이벤트 서버 컨트롤 이벤트 Init 이벤트

More Related