Trường Đại Học Lạc Hồng 2009 - 2010
LẬP TRÌNH
WEB ASP.NET
Ts. Vũ Đức Lung
Ks. Phan Hữu Tiếp
Chương 3:
Điều khiển trình chủ ASP.NET
1
LHU
Ts. Vũ Đức Lung – Ks. Phan Hữu Tiếp
Web service conntrols
Nghiên cứu HTML Control
Nghiên cứu ASP.NET Web Control
2
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Phan Hữu Tiếp
HTML Control
Dùng để thể hiện giao diện web
Tất cả các class HTML control chứa trong
namespace System.Web.UI.HtmlControls
HTML Server control là những tag HTML tạo
ra
Duy trì tương thích với các tag HTML cũ.
Thêm vào thuộc tính run at = “server”
Tất cả HTML Server Control phải được đặt
trong
Tag <form> với thuộc tính run at = “server”
3
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Phan Hữu Tiếp
ASP.NET Web Control
ASP.NET Server Control là những tag đặc biệt của riêng ASP.NET.
Các control này cũng sẽ được xử lý trên server, và địi hỏi phải có
thuộc tính runat = “server”
Khơng tương ứng với HTML tag nào.
Có thể dùng thể hiện các thành phần phức tạp.
Nội dung nghiên cứu:
ASP.NET Page
Các điều khiển cơ bản
4
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Phan Hữu Tiếp
ASP.NET Page
Đây là phần chính của giao diện, là nơi chứa các điều khiển
được sử dụng để thể hiện nội dung trang web đến người dùng
Sự kiện:
Page_Init()
Page_Load()
Page_PreRender()
Page_Unload()
5
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Phan Hữu Tiếp
ASP.NET Page
Init: sự kiện Page_Init xảy ra đầu tiên khi trang web được yêu cầu
Load: sự kiện này là nơi ta sẽ đặt phần lớn các xử lý, giá trị khởi
động ban đầu cho trang web. Sự kiện này luôn xảy ra mỗi khi trang
web được yêu cầu.
PreRender: Sự kiện này xảy ra khi trang web chuẩn bị được trả về
cho Cilent
Unload: Sự kiện này đối lập với sự kiện Page_Init xảy ra đầu tiên
khi trang web được yêu cầu, thì Page_Unload là sự kiện sau cùng,
xảy ra sau tất cả những sự kiện khác.
6
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Phan Hữu Tiếp
Các thuộc tính trong ASP.NET Page
IsPostBack: đây là thuộc tính kiểu Boolean, giá trị của thuộc
tính này cho biết trạng thái của trang web khi được load. Nếu
là lần load đầu tiên, giá trị của thuộc tính này bằng False.
Thuộc tính này thường được sử dụng trong sự kiện
Page_Load để kiểm tra trạng thái của trang web
SmartNavigation: trong trường hợp nội dung trang web vượt
quá kích thước hiển thị của màn hình và bạn đang đọc ở phần
giữa của trang web, khi được Reload lại, màn hình sẽ hiển thị
phần đầu của trang web. Nếu giá trị của thuộc tính này là
True, trình duyệt web sẽ vẫn giữ nguyên vị trí mà bạn đang
đọc sau khi Reload. Đây là thuộc tính kiểu Boolean.
7
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Phan Hữu Tiếp
So sánh giữa ASP.NET Server Conntrol
và HTML Control
8
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Phan Hữu Tiếp
Khác biệt trong HTML tag
Server control:
<asp:controlname id="some_id" runat="server"/>
HTML control:
HTML Tag
Ví dụ:
9
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Phan Hữu Tiếp
Một số ví dụ
10
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Phan Hữu Tiếp
ASP.NET Web Control
ASP.NET Web ConTrol đơn giản, tương tự các điều khiển
trên Windows Form
Đồng nhất: Các điều khiển Web Server có các thuộc tính
giớng nhau nên dễ tìm hiểu và sử dụng
Hiệu quả: các điều khiển web server tự động phát sinh ra các
tag HTML theo từng loại Browser
Điều
khiển
sự
kiện
và
chương
trình
con
(Control events and Subroutines)
Sự kiện sinh ra: bấm chuột, bấm phím ENTER, load 1 trang
web…=>Bộ sử lý sự kiện – Handler
<form runat="server">
<asp:Label id="lblMessage" runat="server" />
</form>
11
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Phan Hữu Tiếp
ASP.NET Web Control
Các sự kiện thường gặp
OnClick, OnCommand, OnLoad
OnInit
OnPreRender: được xảy ra sau khi Control được nạp, và
trước khi control được render (tức là hiển thị ra client/browser
OnUnLoad
OnDispose: button được giải phóng khỏi bộ nhớ
OnDataBinding
12
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Phan Hữu Tiếp
ASP.NET Web Control
Thuộc tính
Kiểu
Ý nghĩa
ID
Ch̃i KT Tên control, duy nhất
AccessKey
String
Ký tự chuyển nhanh đến control, phím nóng
BackColor
Color
Màu nền
BorderColor
Color
Màu đường viền
BorderStyle BorderStyle kiểu đường viền
BorderWidth
Unit
độ rộng đường viền
Visible
Boolean
Control có thấy hay không, mặc định – true
Font
FontInfo
Font cho control
ForeColor
Color
Màu font
Height
Unit
chiều cao
Width
Unit
độ rộng
AutoPostBack
boolean
Khi được thiết lập là True, mỗi khi người dùng
thay đổi dữ liệu TextChanged trong TextBox sẽ
kích hoạt sự kiện post-back về server
13
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Phan Hữu Tiếp
ASP.NET Web Control
Thuộc tính
Attributes
CssClass
Enabled
ToolTip
Kiểu
Ý nghĩa
Attribute_Collection Tập hợp các thuộc tính của điều khiển
HTML
String
Quy định hình thức thể hiện của điều
khiển qua tên CSS
Boolean
Quy định điều khiển có được hiển thị hay
không hiển thị
String
Dòng chữ sẽ hiển thị khi rê chuột vào
điều khiển
14
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Phan Hữu Tiếp
ASP.NET Web Control
Các web control cơ bản:
Label
TextBox
Button
Image
ImageButton
LinkButton
HyperLink
RadioButton
RadioButtonList
CheckBox
CheckBoxList
DropDownList
ListBox
Panel
PlaceHolder
15
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Phan Hữu Tiếp
ASP.NET Web Control: Label
Label thường được sử dụng để hiển thị và trình bày nội dung
trên trang web.
Nội dung hiển thị trên label được xác định thơng qua thuộc tíh
Text.
Thuộc tính Text có thể nhận và hiển thị nội dung với các Tag
HTML
Khai báo sử dụng label trong trang ASP.NET
<asp:Label ID="Label1“ runat="server“ Text="Label"></asp:Label>
Tên label
Bắt buộc có
Nội dung trên label
16
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Phan Hữu Tiếp
ASP.NET Web Control: Label
Các thuộc tính của Label:
Ví dụ:
lblNhan.text=“Chào bạn”
lblNhan.text=“<b>Chào bạn</b>”
17
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Phan Hữu Tiếp
ASP.NET Web Control: HyperLink
Điều khiển này được dùng đề tạo ra các liên kết siêu văn bản
Các thuộc tính:
ImageURL: quy định hình hiển thị trên điều khiển
Text: ch̃i văn bản được hiển thị trê điều khiển. Trong trường
hợp cả hai thuộc tính ImageURL và Text được thiết lập, thuộc
tính ImageURL được ưu tiên, thuộc tính Text sẽ được hiển thị
như là một ToolTip
NavigateURL: đường dẫn liên kết đến
Target: xác định cửa sổ sẽ hiển thị cho mới liên kết
•
•
•
•
_blank: hiển thị trên một cửa sổ mới
_self: hiển thị trang liên kết tại cửa sổ hiện tại
_parent: hiển thị trang liên kết tại frame cha
?? Trong tab mới???
18
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Phan Hữu Tiếp
ASP.NET Web Control: HyperLink
Cách khai báo:
HyperLink </asp:HyperLink>
Ví dụ:
hplLienket.text=“Trang chủ ASP.NET”
hplLienket.ImageUrl=“hinh\hinhmau.jpg”
hplLienket.Navigation=“http:’//lhu.edu.vn”
hplLienket.Target=“_blank”
19
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Phan Hữu Tiếp
ASP.NET Web Control: Textbox
Textbox là điều khiển được dùng để nhập liệu và hiển thị dữ
liệu. Textbox thường được sử dụng nhiều với các ứng dụng
trên web
Các thuộc tính
Text: nội dung chứa trong textbox
TextMode: quy định chức năng của textbox như sau:
• SingleLine: hiển thị và nhập liệu 01 dòng vă bản
• MultiLine: hiển thị và nhập liệu nhiều dòng văn bản
• Password: hiển thị dấu * thay cho các ký tự có trong textbox
Rows: trong trường hợp textmode=MultiLine, thuộc tính Rows sẽ
qui định sớ dòng vă bản được hiển thị
MaxLength: quy định số ký tự tối đa được nhập vào Textbox
Wrap: tự động ngắt lề phải và xuống dòng
20
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Phan Hữu Tiếp
ASP.NET Web Control: Textbox
Các thuộc tính tiếp theo:
AutoPostBack: thuộc tính này
qui định điều khiển có được
phép tự động PostBack về
Server khi nội dunng trong
Textbox bị thay đổi hay khơng.
Thuộc tính này có giá trị
boolean
Khai báo textbox:
runat="server"></asp:textbox>
21
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Phan Hữu Tiếp
ASP.NET Web Control: Image
Điều khiển này dùng để hiện thị hình ảnh lên trang web
Thuộc tính:
ImageURL: đường dẫn đến tập tin hình ảnh cần hiển thị
AlternateText: ch̃i văn bản sẽ hiển thị khi tập tin được thiết lập
trong thuộc tính ImageURL khơng tờn tại
ImageAlign: vị trí hiển thị giữa hình và nội dung văn bản
•
•
•
•
•
NotSet
Left
Middle
TextTop
Right
22
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Phan Hữu Tiếp
ASP.NET Web Control: Button, Image Button,
LinkButton
Các điều khiển Button, Image Button, LinkButton mặc định
đều là nút submit button, mỗi khi được nhấn sẽ PostBack về
Server
Khi chúng ta thiết lập giá trị thuộc tính CommandName cho
các điều khiển này, chúng ta gọi tên chung cho các điều khiển
là Command Button
Các thuộc tính thường sử dụng:
Text: ch̃i văn bản hiển thị trên điều khiển
CommandName: tên lệnh, được sử dụng trong sự kiện
Command
CommandArgument: thông tin bổ sung cho sự kiện Command
CausesValidation: trang web mặc định kiểm tra tính hợp lệ dữ
liệu mỗi khi được PostBack. Giá trị mặc định là True
23
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Phan Hữu Tiếp
ASP.NET Web Control: Button, Image Button,
LinkButton
24
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Phan Hữu Tiếp
ASP.NET Web Control: Listbox, DropDownList
Listbox và DropDownList là điều khiển danh sách lựa chọn
mà người dùng có thể chọn một hay nhiều(Chỉ dành riêng cho
listbox). Các mục lựa chọn có thể thêm vào danh sách thông
qua lệnh hay ở cửa sổ thuộc tính ( property windows)
Các thuộc tính thường sử dụng:
AutoPostBack: thuộc tính này quy định điều khiển có được phép
tự động PostBack về server khi chỉ số của mục chọn bị thay đổi.
Giá trị mặc định của thuộc tính này là False.
Item: đây là tập hợp chứa các mục chọn của điều khiển. Ta có
thể thêm vào mục chọn vào thời điểm thiết kế thông qua cửa sổ
ListItem Collection Editor hay thông qua lệnh.
Rows: qui định chiều cao của ListBox theo số dòng hiển thị
SelectionMode: thuộc tính này xác định cách thức chọn các mục
trong ListBox, SelectionMode chỉ được phép thay đổi trong quá
trình thiết kế
25
http:// lhu.edu.vn