Event handlershandlers có một đặc tả riêng về kiểu dữ liệu trả về và tham số truyền vào: Event Handlers luôn ở dạng void methods Event Handlers luôn đi kèm hai tham số: Tham số object
Trang 1Môn học: Lập trình ASP.NET
Event trong ASP.NET
TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN
KHOA CÔNG NGHỆ THÔNG TIN
BỘ MÔN CÔNG NGHỆ PHẦN MỀM
- -Nội dung
2
Trang 21 ASP.NET Event Model
3
1 Event model
Phương thức Page_Load gọi là event handler
Event handler là phương thức quyết định hành động nào được
thực hiện khi xảy ra một sự kiện nào đó (click, select…)
4
Trang 3Event handlers
handlers có một đặc tả riêng về kiểu dữ liệu trả về và
tham số truyền vào:
Event Handlers luôn ở dạng void methods
Event Handlers luôn đi kèm hai tham số:
Tham số object
Tham số EventArgs (hoặc lớp kế thừa của EventArgs như
CommandEventArgs, ImageClickEventArgs…)
5
ASP.NET event system
khác hẳn so với các Windows Application
Window Application: event được raise và handler trong
cùng một processor
ASP.NET: event được raise tại client (the browser) nhưng
được truyền và xử lý tại server
6
Trang 4ASP.NET event system
7
Postback
ngược lại cho server bằng cách gọi thực hiện request
cùng một trang web
post thông tin về lại cho server
8
Trang 59
Event type
Page events
Luôn được tự động gọi thực hiện theo một thứ tự xác định
(Page lifecycle)
Page_YYY với YYY là tên của event
Control events
Gắn với một control cụ thể và chỉ gọi thực hiện trong một vài
tình huống xác định
Khai báo dựa trên markup hoặc coding
10
Trang 6Thêm event handler trong VS.NET
FIT - HCMUS
11
View state
trong ASP.NET
thông tin của một Web page giữa các lần request và
đươc gửi tới browser dưới dạng một hidden HTML
<input> element
dưới dạng HTTP POST đều được lưu trữ trong
view state
12
Trang 7View state
thị của các Web Forms
Sau khi server response (hồi đáp) một request về client thì
nó không còn lưu trữ bất kỳ thông tin dữ liệu của lần
request đó
lại trạng thái của page trong những lần request khác
nhau
13
View state
cả các page đã được execute, nhưng trước thời
điểm server tiến hành response
state, giải mã thông tin và phục hồi lại trạng thái
của tất cả các control tại trước thời điểm post về
server
người lập trình có thể bỏ qua thông tin view state
này
14
Trang 8View state
cầu tắt view state trên một trang web nào đó
Đ/v web page chứa lương thông tin hiển thị lớn thì kích
thước của view state có thể rất lớn tốn thời gian
download và render của browser
Đ/v web page không bao giờ thực hiện cơ chế post back
itself thì có thể xem xét tắt view stae
15
Page life cycle
thứ tự nhất định gọi là page life cycle
Page initialization
Loading
Post back event handling
Rendering
Unloading
16
Trang 9FIT - HCMUS
17
Detecting postback
những xử lý khác so với lần đầu tiên nó được
request
Đọc và thể hiện dữ liệu từ database ở lần đầu tiên web
page được request
Ở những lần request tiếp theo dữ liệu được lấy từ view
state có sẵn nên không cần thao tác đọc database nữa
18
Trang 10Detecting postback
lần request đầu tiên thông qua thuộc tính
IsPostBack
FIT - HCMUS
19
Postback và non-postback control
sinh sự kiện postback
Môt số control (Label control…) không bao giờ phát
sinh SK postback
Button-type control với Click event luôn phát sinh SK
postback về server
Change events (drop-down list hoặc enter text vào
textbox) mặc định không phát sinh SK postback
20
Trang 11Auto postback
21
Nội dung
22
Trang 122 ASP.NET code compilation
ASP.NET
Các TP giao diện được parse vào một class
TP class này và TP code được compile thành MSIL
(chính là JIT compile)
MSIL được execute trên server, phát sinh HTML,
javascript và trả kết quả về browser.
23
Quá trình compile trong asp.net 2.0
24
Trang 13Nội dung
25
3 The page class
được định nghĩa trong System.Web.UI Namespace
26
Trang 14Asp.net 2.0 class inheritance
27
The page class
quan trong cho phép thao tác trên các Web Forms
Request
Response
Server
Server
28
Trang 15parameter, cookie data …) đến server
29
Response
browser
30
Trang 16trên Web Forms
31
Nội dung
32
Trang 174 Application life cycle
33