Tải bản đầy đủ (.pdf) (7 trang)

Bài 3: Thiết kê và lập trình web với ASP.NET - Sự kiện trong ASP.NET

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (485.88 KB, 7 trang )

Lp trình và Thit k Web 2

i
3

i

3
SS
kinkin
trongtrong
ASP.NETASP.NET
SS
kinkin
trongtrong
ASP.NETASP.NET
Ths
Trn
Th
Bích
Hnh
Ths
.
Trn
Th
Bích
Hnh
Khoa CNTT Khoa CNTT –– H.KHTNH.KHTN
© 2009 Khoa Công ngh thông tin
LptrìnhvàThitk Web 2 – Bài 3: S kin trong ASP.NET
NidNid


Ni

d
ung
Ni

d
ung

Gii
thiu
v
Event
Gii
thiu
v
Event
 Các s kin chính trong chu trình sng ca ng dng web

ki

Aliti &S i


cs
ki
nc

a
A

pp
li
ca
ti
on
&

S
ess
i
on
– Các s kinca WebForm
– Các s kinca ServerControl
© 2009 Khoa CNTT - HKHTN
2
Lp trình và Thitk Web 2 – Bài 3: S kin trong ASP.NET
NidNid
Ni

d
ung
Ni

d
ung

Gii
thiu
v
Event

Gii
thiu
v
Event
 Các s kin chính trong chu trình sng ca ng dng web

ki

Aliti &S i


cs
ki
nc

a
A
pp
li
ca
ti
on
&

S
ess
i
on
– Các s kinca WebForm
– Các s kinca ServerControl

© 2009 Khoa CNTT - HKHTN
3
LptrìnhvàThitk Web 2 – Bài 3: S kin trong ASP.NET
ASP NET E t M d lASP NET E t M d l
ASP
.
NET

E
ven
t

M
o
d
e
lASP
.
NET

E
ven
t

M
o
d
e
l


ng
dng
web ASP .NET
s
dng

hình
lp
trình
ng
dng
web

ASP

.NET

s
dng

hình
lp
trình
hng s kin

Event: Click
,
Load…
,
– Event Handler: Phng thcx lý khi có s kinxyra

protected void Page_Load(object sender, EventArgs e)
{

}
© 2009 Khoa CNTT - HKHTN
4
Lp trình và Thitk Web 2 – Bài 3: S kin trong ASP.NET
CC
SS
C
lient
C
lient based event system vs. A
S
P.NET event systembased event system vs. A
S
P.NET event system
© 2009 Khoa CNTT - HKHTN
5
LptrìnhvàThitk Web 2 – Bài 3: S kin trong ASP.NET
CC
SS
C
lient
C
lient based event system vs. A
S
P.NET event systembased event system vs. A
S
P.NET event system

© 2009 Khoa CNTT - HKHTN
6
Lp trình và Thitk Web 2 – Bài 3: S kin trong ASP.NET
PtPt
bkbk
P
os
tP
os
t

b
ac
kb
ac
k
© 2009 Khoa CNTT - HKHTN
7
LptrìnhvàThitk Web 2 – Bài 3: S kin trong ASP.NET
CPCP
PtPt
bkbk
C
ross
P
age
C
ross
P
age

P
os
tP
os
t

b
ac
kb
ac
k
// Default.aspx
Name <asp:TextBox ID=“txtName" runat="server“ />
<asp:Button ID="Button2" runat="server"
PostBackUrl
=" /Target aspx"
Text "Click" />
PostBackUrl
="
~
/Target
.
aspx"

Text
=
"Click"

/>
// Target.aspx.cs

if (this.PreviousPage.IsCrossPagePostBack)
{
TtB
tt
T
ex
tB
ox
t
x
t
=
(TextBox)Page.PreviousPage.FindControl(“txtName")
;
Response.Write("Hello " + txt.Text);
}
© 2009 Khoa CNTT - HKHTN
8
}
Lp trình và Thitk Web 2 – Bài 3: S kin trong ASP.NET
Vi St tVi St t
Vi
ew
St
a
t
e
Vi
ew
St

a
t
e

Lu
thông
tin
trng
thái
các
control
trên
trang
web
Lu
thông
tin

trng
thái
các
control

trên
trang
web
 c mã hóa và nhúng trong trang web didng n
 Khi trang web đc postback li server,
A
SP.Net s phc

hilicáctrng thái ca control trc đó& cpnht
nhng
thay
đi
nhng
thay
đi
 Sau đógi các hàm x lý s kinca Page & Control
<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE"
value="/wEPDwUJODExMDE5NzY5D2QWAgIDD2QWAgIBDw8WAh4EVGV4dAUK
MDgvMDE
vMjAwNmRkZDZPhFHJER4chf3nmlgfL+uq4W58" />
© 2009 Khoa CNTT - HKHTN
9
LptrìnhvàThitk Web 2 – Bài 3: S kin trong ASP.NET
NidNid
Ni

d
ung
Ni

d
ung

Gii
thiu
v
Event
Gii

thiu
v
Event
 Các s kin chính trong chu trình sng ca ng dng web

ki

Aliti &S i


cs
ki
nc

a
A
pp
li
ca
ti
on
&

S
ess
i
on
– Các s kinca WebForm
– Các s kinca ServerControl
© 2009 Khoa CNTT - HKHTN

10
Lp trình và Thitk Web 2 – Bài 3: S kin trong ASP.NET
Cá T ti t t  d WbCá T ti t t  d Wb

c
T
p
ti
n
t
rong m
t


ng
d
ng
W
e
bCá
c
T
p
ti
n
t
rong m
t



ng
d
ng
W
e
b

Khi biên dch mt ng dng Web:
Khi

biên

dch

mt

ng

dng

Web:
– Web.config + Global.asax + Style.css

Visual Studio .NET biên dch ttc
mã ngun
vào mt file
.DLL
lu
Visual


Studio

.NET

biên

dch

tt

c



ngun
vào

mt

file

.DLL
lu

trong th mc
~/bin
– Phn giao din ca ng dng nm  các file .aspx và .html
© 2009 Khoa CNTT - HKHTN
11
LptrìnhvàThitk Web 2 – Bài 3: S kin trong ASP.NET

Cá E t t h t ì h    d WbCá E t t h t ì h    d Wb

c
E
ven
t

t
rong c
h
u
t
r
ì
n
h
s

ng c

a

ng
d
ng
W
e
b



c
E
ven
t

t
rong c
h
u
t
r
ì
n
h
s

ng c

a

ng
d
ng
W
e
b


Bt đumt chu trình sng ca ng dng Web
Bt


đu

mt

chu

trình

sng

ca

ng

dng

Web
– Bt đu khi mt trình duyt yêu cu 1 trang web ca ng
dng, gilà
Session
dng,

gi



Session
– ng dng web vn chy nu nh nó vn còn Session
đang hot đng

đang

hot

đng
– Chu trình sng ca 1 Web Form trên server ch tn ti
trong
1
khong thigianngn
trong

1

khong

thi

gian

ngn
© 2009 Khoa CNTT - HKHTN
12
Lp trình và Thitk Web 2 – Bài 3: S kin trong ASP.NET
Cá E t t h t ì h    d WbCá E t t h t ì h    d Wb

c
E
ven
t


t
rong c
h
u
t
r
ì
n
h
s

ng c

a

ng
d
ng
W
e
b


c
E
ven
t

t
rong c

h
u
t
r
ì
n
h
s

ng c

a

ng
d
ng
W
e
b


Chu trình sng tiptc
Chu

trình

sng

tip


tc
– Ngi dùng tng tác vigiaodinweb(gõvàotext
box,
đánh
du
chn
các
check
box

)
cho
đn
khi
kích
box,
đánh
du
chn
các
check
box

)
cho
đn
khi
kích
hotmts kin post-back (nhn button …)


D
liu
ca
trang
(
view
state
)
đc
gi
v
cho
server
D
liu
ca
trang
(
view
state
)
đc
gi
v
cho
server
– Khi server nhn đc view state

to
ra

th
hin
mi
ca
Web
Form


to
ra
th
hin
mi
ca
Web
Form
• ind liuvàoview state

X

các
s
kin
xy
ra
X

các
s
kin

xy
ra
• Tr ktqu HTML v cho trình duytvàhyth hincaWeb
Form
© 2009 Khoa CNTT - HKHTN
13
LptrìnhvàThitk Web 2 – Bài 3: S kin trong ASP.NET
Cá E t t h t ì h    d WbCá E t t h t ì h    d Wb

c
E
ven
t

t
rong c
h
u
t
r
ì
n
h
s

ng c

a

ng

d
ng
W
e
b


c
E
ven
t

t
rong c
h
u
t
r
ì
n
h
s

ng c

a

ng
d
ng

W
e
b


Chu trình sng tiptc
Chu

trình

sng

tip

tc
© 2009 Khoa CNTT - HKHTN
14
Lp trình và Thitk Web 2 – Bài 3: S kin trong ASP.NET
Cá E t t h t ì h    d WbCá E t t h t ì h    d Wb

c
E
ven
t

t
rong c
h
u
t

r
ì
n
h
s

ng c

a

ng
d
ng
W
e
b


c
E
ven
t

t
rong c
h
u
t
r
ì

n
h
s

ng c

a

ng
d
ng
W
e
b


Chu trình sng kt thúc
Chu

trình

sng

kt

thúc
– Khi ngi dùng tt trình duyt, hocsaumtkhong thigian
timeout không refesh li trang web thì Session cakt thúc
– Nu không còn Session nào t các ngi dùng ca ng dng web
thì

ng dng web s kt thúc
© 2009 Khoa CNTT - HKHTN
15
LptrìnhvàThitk Web 2 – Bài 3: S kin trong ASP.NET
NidNid
Ni

d
ung
Ni

d
ung

Gii
thiu
v
Event
Gii
thiu
v
Event
 Các s kin chính trong chu trình sng ca ng dng web

ki

Aliti &S i


cs

ki
nc

a
A
pp
li
ca
ti
on
&

S
ess
i
on
– Các s kinca WebForm
– Các s kinca ServerControl
© 2009 Khoa CNTT - HKHTN
16
Lp trình và Thitk Web 2 – Bài 3: S kin trong ASP.NET
S ki Aliti àS iS ki Aliti àS i
S

ki
n
A
pp
li
ca

ti
on v
à

S
ess
i
on
S

ki
n
A
pp
li
ca
ti
on v
à

S
ess
i
on
Tên s

ki

nX
y

ra khi
 
y
Application_Start Ngi dùng đu tiên ghé thm 1 trang web trong ng
dng web
Application_End Không còn ngi dùng nào đang m trang web ca
ng dng
Application_Error Khi có li xy ra trong ng dng
Session Start
Mtngi dùng mi ghé thm 1 trang web ca ng
Session
_
Start
Mt

ngi

dùng

mi

ghé

thm

1

trang

web


ca

ng

dng
Session End
Ngi dùng đóng trình duythocsaumtkhong
Session
_
End
Ngi

dùng

đóng

trình

duyt

hoc

sau

mt

khong

thi gian time out không request lên ng dng

© 2009 Khoa CNTT - HKHTN
17
LptrìnhvàThitk Web 2 – Bài 3: S kin trong ASP.NET
NidNid
Ni

d
ung
Ni

d
ung

Gii
thiu
v
Event
Gii
thiu
v
Event
 Các s kin chính trong chu trình sng ca ng dng web

ki

Aliti &S i


cs
ki

nc

a
A
pp
li
ca
ti
on
&

S
ess
i
on
– Các s kinca WebForm
– Các s kinca ServerControl
© 2009 Khoa CNTT - HKHTN
18
Lp trình và Thitk Web 2 – Bài 3: S kin trong ASP.NET
PEtPEt
P
age
E
ven
tP
age
E
ven
t

Tên s kinXyrakhi
PIi

l
đ
à
khi
i
P
age_
I
n
i
t

c server contro
l

đ
cnpv
à
khi
to trong v
i
ew
state
ca web form.
Pa
g
e Load Các server control đ


cn
p
lên đit

n
g
Pa
g
e. T

i
g
_

p
 g
g

thi đim này thông tin ca View state đãcóth s
dng đc, do đó đây là lúc bnvitmãlnh thay đi
thitlpca control hochinth d liu lên trang.
Page_DataBinding Server control trên trang đcgnktvi ngund
liu.
Page_PreRender Bt đu dàn trang cho đitng Page.
Page_Unload itng Page đchykhib nh.
Page_Error Khi có li không đcx lý xy ra trong trang.
© 2009 Khoa CNTT - HKHTN
19
LptrìnhvàThitk Web 2 – Bài 3: S kin trong ASP.NET

© 2009 Khoa CNTT - HKHTN
20
Lp trình và Thitk Web 2 – Bài 3: S kin trong ASP.NET
PIitPIit
P
age_
I
n
itP
age_
I
n
it
© 2009 Khoa CNTT - HKHTN
21
LptrìnhvàThitk Web 2 – Bài 3: S kin trong ASP.NET
PLdPLd
P
age_
L
oa
dP
age_
L
oa
d
© 2009 Khoa CNTT - HKHTN
22
Lp trình và Thitk Web 2 – Bài 3: S kin trong ASP.NET
PPRdPPRd

P
age_
P
re
R
en
d
e
rP
age_
P
re
R
en
d
e
r
© 2009 Khoa CNTT - HKHTN
23
LptrìnhvàThitk Web 2 – Bài 3: S kin trong ASP.NET
NidNid
Ni

d
ung
Ni

d
ung


Gii
thiu
v
Event
Gii
thiu
v
Event
 Các s kin chính trong chu trình sng ca ng dng web

ki

Aliti &S i


cs
ki
nc

a
A
pp
li
ca
ti
on
&

S
ess

i
on
– Các s kinca WebForm
– Các s kinca ServerControl
© 2009 Khoa CNTT - HKHTN
24
Lp trình và Thitk Web 2 – Bài 3: S kin trong ASP.NET
CáCá
kiki

SCtlSCtl

c

css
ki
n
ki
nc

ac

a
S
erver
C
on
t
ro
lS

erver
C
on
t
ro
l

Post
-
back event
Post
back

event
– Gi trang web hin hành đn trang web đc qui đnh bi
thu

c tính PostBackUrl đ server x l
ý

ý
– Mc đnh giv chính trang web hin hành
 ASP.NET Server Controls
– Button, Link Button, Image Button
– TextBox, DropDownList, ListBox, RadioButton, CheckBox
– Có th thitlps kin Post-back cho các control này bng cách
gán thuc tính AutoPostBack=True
© 2009 Khoa CNTT - HKHTN
25
LptrìnhvàThitk Web 2 – Bài 3: S kin trong ASP.NET

CáCá
kiki

SCtlSCtl

c

css
ki
n
ki
nc

ac

a
S
erver
C
on
t
ro
lS
erver
C
on
t
ro
l


Validation event
Validation

event
– X lý kimtrad liu trên trang trckhigiv cho server

Validation server control

Validation

server

control
© 2009 Khoa CNTT - HKHTN
26
Lp trình và Thitk Web 2 – Bài 3: S kin trong ASP.NET
TT
ktkt
T
ng
T
ng
ktkt

Client
-
based vs.
ASP.Net
Event system
Client

based

vs.

ASP.Net
Event

system
 Postback Event
 ViewState
 Application & Session Events
 Page Events
CtlE t

C
on
t
ro
l

E
ven
t
s
© 2009 Khoa CNTT - HKHTN
27

×