lập trình ứng dụng web với asp.net lập trình ứng dụng web với asp.net lập trình ứng dụng web với asp.net lập trình ứng dụng web với asp.net lập trình ứng dụng web với asp.net lập trình ứng dụng web với asp.net lập trình ứng dụng web với asp.net lập trình ứng dụng web với asp.net lập trình ứng dụng web với asp.net lập trình ứng dụng web với asp.net lập trình ứng dụng web với asp.net lập trình ứng dụng web với asp.net lập trình ứng dụng web với asp.net
Trang 1TÀI LIỆU HƯỚNG DẪN GIẢNG DẠY
LẬP TRÌNH ỨNG DỤNG WEB
VỚI ASP.NET
Trang 2GIỚI THIỆU
Thời lượng
45 lý thuyết
45 thực hành
Mục tiêu : Cung cấp một số kiến thức cơ bản
Thiết kế, xây dựng, phát triển ứng dụng web với asp.net
Sử dụng thư viện jQuery
Đánh giá : gồm 3 cột điểm
Chuyên cần : 10% (đi học đầy đủ)
Giữa kỳ : 30% (báo cáo đồ án tự chọn)
Cuối kỳ : 60% (thi thực hành)
Tài liệu tham khảo
http://www.w3schools.com
Trang 31.1 HTTP và HTML
1.1.1 HTTP (Hypertext Transfer Protocol)
Là một giao thức cho phép các máy tính trao đổi thông tin với nhau qua mạng máy tính HTTP được xác định qua URLs (Uniform Resource Locators) với cấu trúc chuỗi có định dạng như sau:
Internet : Là một hệ thống gồm nhiều máy tính khắp nơi trên thế giới kết nối lại với nhau
WWW : World Wide Web (Mạng toàn cầu)
Web Server : Máy tính dùng để lưu trữ các ứng dụng web
Web Client : Máy tính dùng để truy cập các trang web
Web Browser : Phần mềm dùng để hiển thị trang web (IE, FireFox, Opera, Google Chrome, Safari, …)
1.1.2 HTML (Hypertext Markup Language)
Trang web là một tập tin văn bản được viết bằng ngôn ngữ HTML Ngôn ngữ
này sử dụng các ký hiệu quy định sẵn được gọi là tag để trình bày nội dung văn bản
Trang 4Nội dung + định dạng = kết quả hiển thị
1.2 Tìm hiểu các mô hình ứng dụng
1.2.1 Mô hình ứng dụng 2 lớp
Đây là một dạng mô hình đơn giản, khá phổ biến của một ứng dụng phân tán Trong
mô hình này việc xử lý dữ liệu được thực hiện trên Database Server Việc nhận và hiển thị dữ liệu được thực hiện ở Client
Ưu điểm
Dữ liệu tập trung dữ liệu được nhất quán
Dữ liệu chia sẻ cho nhiều người dùng
Khuyết điểm
Các xử lý, tra cứu và cập nhật dữ liệu được thực hiện ở Database Server, việc nhận kết quả và hiển thị được thực hiện ở Client khó khăn trong việc bảo trì và nâng cấp
Khối lượng dữ liệu truyền trên mạng lớn hao tốn tài nguyên đường truyền
</html>
Trang 5Ưu điểm
Hỗ trợ nhiều người dùng
Giảm bớt xử lý cho client
Nhận và hiển thị dữ liệu tập trung tại Application Server dễ bảo trì và nâng cấp
Khuyết điểm
Phải sử dụng thêm một Application Server tăng chi phí
2 Giới thiệu về ASP.NET
2.1 Tìm hiểu về NET Platform
.Net Platform bao gồm Net Framework và những công cụ được dùng để
xây dựng và phát triển các ứng dụng và dịch vụ NET
Những sản phẩm công nghệ Net của Microsoft bao gồm: MSN.Net, Office.Net, Visual Studio.Net và Window Server 2003 được biết đến với tên gọi Window Net Server
Visual Studio.Net là bộ phần mềm được dùng để xây dựng và phát triển các ứng dụng bao gồm các ngôn ngữ lập trình: C++.Net, VB.Net, C# và J# Tất cả các
Trang 6ngôn ngữ này được xây dựng trên nền Net Framework, vì thế cú pháp cơ bản của những ngôn ngữ này tương tự như nhau
2.2 Tìm hiểu về Net Framework
Kiến trúc Net Framework
2.2.1 Hệ điều hành
Cung cấp các chức năng xây dựng ứng dụng
Với vai trò quản lý việc xây dựng và thi hành ứng dụng, NET Framework cung cấp các lớp đối tượng (Class) có thể thi hành các chức năng mà đối tượng đó cung cấp Tuy nhiên, lời kêu gọi có được “thi hành” hay không còn tùy thuộc vào hệ điều hành đang chạy ứng dụng
Các chức năng đơn giản như hiển thị một thông báo (MessageBox) sẽ được NET Framework sử dụng các hàm API của Windows Chức năng phức tạp hơn sẽ sử dụng các COMponent sẽ yêu cầu window phải cài đặt
Như vậy, khi lập trình với NET việc lựa chọn hệ điều hành cũng không kém phần quan trọng
2.2.2 Common Language Runtime
Là thành phần “kết nối” giữa các phần khác trong NET Framework với hệ điều hành Common Language Runtime (CLR) giữ vai trò quản lý việc thi hành các ứng dụng viết bằng NET trên Windows CLR sẽ thông dịch các lời gọi từ chương trình cho Windows thi hành, đảm bảo ứng dụng không chiếm dụng và sử dụng tràn lan tài nguyên của hệ thống Nó cũng không cho phép các lệnh “nguy hiểm” được thi hành
Trang 7Trong các phiên bản mới của hệ điều hành như Windows 7 và Windows 2003, CLR được tích hợp sẵn nên ứng dụng được viết ra trên máy chúng ta có thể chạy được trên máy tính khác mà không cần phải cài đặt
2.2.3 Bộ thư viện các lớp đối tượng
2.2.3.1 Base class library – thư viện lớp cơ sở
Đây là thư viện các lớp cơ bản nhất, được dùng trong khi lập trình Ví dụ String, Integer, Exception …
2.2.3.2 ADO.NET và XML
Bộ thư viện này gồm các lớp dùng để xử lý dữ liệu Các lớp đối tượng XML được cung cấp để xử lý các dữ liệu theo định dạng mới: XML Ví dụ SqlDataAdapter, SqlCommand, DataSet, XMLReader, XMLWriter, …
2.2.3.3 ASP.NET
Cung cấp một bộ các Server Control để lập trình viên bắt sự kiện và xử lý dữ liệu của ứng dụng như đang làm việc với ứng dụng Windows Ví dụ cho các lớp trong thư viện này là WebControl, HTMLControl, …
2.2.3.4 Web Services
Là các dịch vụ được cung cấp thông qua Web (hay Internet) Dịch vụ được coi
là Web Services không nhằm vào người dùng cuối mà nhằm vào người xây dựng phần mềm Web Services có thể dùng để cung cấp các dữ liệu hay một chức năng tính toán
Hầu hết, những người mới đến với lập trình web đều bắt đầu tìm hiểu những
kỹ thuật ở phía Client (Client-side) như : HTML, JavaScript, CSS (Cascading Style Sheet) Khi Web Browser yêu cầu một trang web (trang web sử dụng kỹ thuật client-
Trang 8side), Web server tìm trang web mà client yêu cầu, sau đó gửi về cho Client, Client nhận kết quả trả về từ Server và hiển thị lên màn hình
ASP.NET là kỹ thuật lập trình ở phía Server thì hoàn toàn khác, mã lệnh ở phía server sẽ được biên dịch và thi hành tại Web Server Sau khi được Server đọc, biên dịch và thi hành, kết quả tự động được chuyển sang HTML/JavaScript/CSS và trả
về cho Client Tất cả các xử lý lệnh ASP.NET đều được thực hiện tại Server và do đó gọi là kỹ thuật lập trình ở phía Server
2.4 Những ưu điểm của ASP.NET
ASP.NET cho phép lựa chọn một trong các ngôn ngữ lập trình mà mình yêu thích như: Visual Basic.Net, C#, J#
Trang ASP.NET được biên dịch trước Thay vì phải đọc và thông dịch mỗi khi trang web được yêu cầu, ASP.NET biên dịch những trang web động thành những tập tin DLL mà server có thể thi hành nhanh chóng và hiệu quả
ASP.NET sử dụng phong cách lập trình mới: Code Behide Tách code riêng, giao diện riêng dễ đọc, dễ quản lý và bảo trì
2.5 Quá trình xử lý tập tin ASPX
Trang 93 Web Server
3.1 IIS (Internet Information Services)
IIS có thể được sử dụng như một web server, kết hợp với ASP để xây dựng các ứng dụng web tận dụng các điểm mạnh của Server-side Script, COM component, … theo mô hình Client/Server
IIS có nhiều phiên bản, đầu tiên được phát hành rời trong bản Service của Window NT
Các phiên bản Window 2000 đã có tích hợp IIS 5.0
Window XP tích hợp IIS 5.5
Window XP.NET Server tích hợp IIS 6 hỗ trợ các tính năng dành cho NET của ASP.NET và Web Service
3.2 Cài đặt Web Server
3.2.1 Cài đặt Web Server trên Windows 2000/Windows XP Professional
Windows 2000 tích hợp sẵn IIS nhưng không tự động cài đặt, do đó chúng ta phải tự cài IIS
Bước 1 Chọn Control Panel | Add/Remove Programs
Bước 2 Add/Remove Windows Components
Bước 3 Đánh dấu vào mục chọn Internet Information Services (IIS)
Bước 4 Chọn nút Details để chọn các mục chi tiết
Trang 10Bước 5 Chọn các mục cần cài đặt, trong đó chúng ta nhớ chọn
FrontPage 2000 Server Extensions
Internet Information Servieces Snap-In
Internet Services Manager (HTML)
Bước 6 Click OK để hệ thống tự cài đặt
3.2.2 Cài đặt Web Server trên Windows Server 2003
Cũng tương tự như cài đặt Web Server trên Windows 2000
Bước 1 Chọn Control Panel | Add/Remove Programs
Bước 2 Add/Remove Windows Components
Bước 3 Đánh dấu vào Application Server
Bước 4 Chọn nút Details để chọn các mục chi tiết
Các bước còn lại thực hiện như trên Windows 2000
Trang 113.2.3 Cài đặt Web Server trên Windows 7
Vào Control Panel | Program and Features | Turn Windows Features on or off
Chọn các mục trong Internet Information Services | OK
3.3 Cấu hình Internet Information Services
3.3.1 Windows 2000/Windows XP Professional/Windows Server 2003
Bước 1: Click phải vào thư mục chứa ứng dụng Web | Property
Bước 2: Chọn Web Sharing
Trang 12Bước 3: Shared this folder
Bước 4: Apply | OK
Test ứng dụng : Vào trình duyệt web gõ http://localhost/XuLyViPham
Nếu xuất hiện hộp thoại như hình bên dưới ta thực hiện các bước sau:
Bước 1: Start | Settings | Control Panel | Administrative Tools
Bước 2: Internet Information Services
Bước 3: Right Click vào ứng dụng Web | Property
Trang 13Bước 4: Chọn thẻ Directory Security | Edit | Anonymous access
Bước 5: OK
Trang 143.3.2 Windows 7
Vào Control Panel | Administrative Tools | Internet Information Services (IIS) Manager
Click phải vào Default Web Site | Add Application
Alias : Nhập tên miền ảo cần chạy trên thanh URL
Physical path: Chỉ định đường dẫn đến ứng dụng web
Trang 154 Tạo ứng dụng web đầu tiên
4.1 Khởi động MS Visual Studio NET
New Project : Tạo một ứng dụng mới
Open Project : Mở một ứng dụng đã có sẵn
Recent Projects: Liệt kê các ứng dụng được mở gần nhất
4.2 Tạo mới ứng dụng web
Bước 1 Chọn New Project hoặc chọn File | New | Web Site
Trang 16Bước 2 Chọn loại ứng dụng cần tạo
Bước 3 Name: Nhập tên ứng dụng web
Location: Đường dẫn lưu ứng dụng
4.3 Phân loại tập tin trong ASP.NET
Tập tin Diễn giải
.asax
Tập tin global.asax trong ASP.NET là tập tin quản lý các sự kiện của ứng dụng (Application, Session và các sự kiện có yêu cầu tới trang web)
.ascx Các điều khiển do người dùng tự tạo
.asmx Tập tin Web Services của ứng dụng ASP.NET
.aspx Phần mở rộng mặc định của trang ASP.NET
.config Tập tin cấu hình ứng dụng theo định dạng XML Web.config chứa
hầu hết các yêu cầu của ứng dụng cs Tập tin mã nguồn viết theo ngôn ngữ C#
.js Tập tin mã nguồn JavaScript
.vb Tập tin mã nguồn viết theo ngôn ngữ VB.NET
4.4 Làm quen với các thành phần giao diện VS.NET
4.4.1 Solution Explorer
Hiển thị cửa sổ Solution Explorer: Thực đơn View | Solution Explorer
Đây là cửa sổ quản lý các tài nguyên của ứng dụng Gồm có chức năng sau:
Thực hiện các chức năng: Copy, Cut, Paste trên tập tin, thư mục như Windows Explorer
Tổ chức thư mục quản lý ứng dụng: Sử dụng chức năng Add | New Folder
từ thực đơn ngữ cảnh
Thêm thành phần mới cho ứng dụng: Sử dụng chức năng Add | Add New Item từ thực đơn ngữ cảnh Xuất hiện hộp thoại Add New Item
- Web Form: Thêm trang Web
- Class: Thêm lớp đối tượng
- Module: Thêm thư viện
- Web UserControl: Thêm điều khiển người dùng …
Trang 17Màn hình thêm thành phần mới cho ứng dụng
Xác định trang web khởi động cho ứng dụng
Chọn trang cần khởi động | Click phải (xuất hiện thực đơn ngữ cảnh) | Chọn Set As Start Page
Xác định trang web khởi động cho ứng dụng
Trang 184.4.2 Properties Window
Hiển thị cửa sổ Properties Window: View | Properties Window
Thông qua cửa sổ thuộc tính, chúng ta có thể thiết lập thuộc tính cho trang web
và các đối tượng có trong trang web
4.4.3 Hiển thị Toolbox: View | Toolbox
Trang 19
4.5 Phân tích trang ASP.NET
4.5.1 Cấu trúc trangASP.NET
Ta nhận thấy trang ASP.NET gồm có hai tập tin
*.aspx : Tập tin chứa phần thiết kế giao diện của trang web
*.aspx.vb/*.aspx.cs : Tập tin chứa code xử lý các tác vụ của trang web
Tập tin *.aspx
Mã của tập tin này được chia ra làm hai phần riêng biệt :
Phần 1: Từ <%Page … %> được gọi là Page Directive phần này cung cấp cho
ASP.NET những thông tin đặc biệt để ASP.NET biết cách mà hành xử cũng như những thông tin dùng trong tiến trình biên dịch
Phần 2: <html></html> phần này là nơi chứa mã code thể hiện hình thức
trình bày của trang web Ngoài ra trong phần này ASP.NET cũng cho phép chúng ta
kèm theo những chỉ thị trong Code Render Block bắt đầu với <% %> để đưa ra
những gì chúng ta mong muốn làm bên trong tag <html></html>
VD:
Trang 20Tập tin *.aspx.vb / *.aspx.cs
Mã tập tin này được chia ra làm hai phần riêng biệt:
Phần 1: Imports … đây là chỉ thị liên kết đến thư viện dùng để xử lý các tác
vụ trên trang web
Phần 2: Public Class … End Class là nơi chứa các hàm hay thủ tục
dùng để xử lý các tác vụ của trang web
VD:
4.5.2 Phân định mã và nội dung
Gồm có 2 dạng sau:
Kiểu mẫu Code Inline Model
Kiểu mãu Code Behide Model
a Kiểu mẫu Code Inline Model
Trong kiểu này mã xử lý tác vụ được viết nằm trong tập tin *.aspx của trang ASP.NET
Trang 21b Kiểu mẫu Code Behide Model
Kiểu mẫu này dùng để phân định mã và nội dung thành 2 tập tin riêng biệt
Chú ý: Trong một trang web ASP.NET chỉ tồn tại duy nhất một trong hai kiểu mẫu
trên để viết code xử lý các tác vụ cho trang web
Trang 22Bài 2
ĐỐI TƯỢNG CỦA ASP.NET
1 Đối tượng cơ bản
1.1 Đối tượng (Object)
Đối tượng là một tên gọi trong đó đối tượng bao gồm cả dữ liệu và phương thức thực hiện trên dữ liệu đó
Trang 232.2 Request Object
Dùng Request Object để gởi thông tin cần thiết tới Server Thường thông tin của Client được gửi đi dưới dạng Form hay QueryString
VD : http://calen.lhu.edu.vn/XemLich/KQ_XemLich_Hoc.aspx?IDLop=820 IDLop chính là QueryString mà Client cần gửi đến Server có giá trị là 820 Thường thì QueryString chỉ dùng tối đa 255 characters
Server lấy dữ liệu mà Client gửi như sau : Request.QueryString(“IDLop”) Nếu Server gửi đi dưới dạng Form Request.Form(“IDLop”)
2.3 Page Object
Gồm tất cả các thuộc tính (Properties), các phương pháp (Method) dùng co các trang ASP.NET Page Object gồm có thành viên cơ bản sau:
Load: Dùng để khởi động khi trang web bắt đầu hiển thị ở Browser
IsPostBack: Dùng để kiểm tra trang web đã được gửi đến Client hay chưa
Session cho phép bạn lưu giữ thông tin của người khách khi viếng thăm Website với bất kỳ loại thông tin nào có liên quan đến họ tại một chỗ nào đó trên Server Chỉ khi nào người khách truy cập vào một site khác, bấy giờ Session mới kết thúc, mọi thông tin liên quan đến họ đều bị xóa sạch
Cú pháp: Session(“SessionName”) = “Value”
Lưu ý: Chúng ta chỉ dùng Session khi cần lưu một vài thông tin nhỏ ví dụ như Username, Password Trong trường hợp quá nhiều thông tin cần phải giữ thì phương pháp Cookies hay cơ sở dữ liệu là thích hợp và hiệu quả hơn cũng như tránh việc tốn
bộ nhớ cho Server
Trang 242.6 Cookies
Cookies chỉ là một tập tin nhỏ ở máy vi tính của user trong đó chứa mọi thông tin đặc trưng cho một mạng nào đó, ví dụ như tên người sử dụng và mật mã
Cookies chứa những dữ liệu đơn giản như: Integer, Float, Boolean, String …
Để đọc và ghi thông tin vào Cookies, chúng ta sử dụng đối tượng HttpCookies Lớp này cho phép chúng ta gán hay lấy giá trị của Cookies
a Tạo ra Cookies
Khai báo và khởi tạo đối tượng HttpCookie, chúng ta có thể sử dụng Cookies dạng đơn, nếu có nhu cầu lưu trữ một giá trị thì sử dụng cú pháp sau:
Dim Cookie as HttpCookie
Cookie = new HttpCookie(name, value)
VD: Dim Cookie as HttpCookie
Cookie = new HttpCookie(“UserID”, “123”) Trong trường hợp muốn lưu trữ nhiều cặp khóa và giá trị tương ứng, chúng ta
sử dụng cú pháp như sau:
Dim Cookie as HttpCookie
Cookie = new HttpCookie(name)
Cookie.Values.Add(name1, value1)
Cookie.Values.Add(name2, value2)
VD: Dim Cookie as HttpCookie
Cookie = new HttpCookie(“Account”) Cookie.Values.Add(“UserName”, “123”) Cookie.Values.Add(“PasWord”, “123”)
b Ghi Cookie xuống Client
Nếu muốn ghi Cookie xuống máy của người sử dụng, chúng ta sử dụng phương thức Add của Cookie Collection thuộc đối tượng Response theo cú pháp:
Response.Cookies.Add(name)
VD: Response.Cookies.Add(“Account”)
c Đáo hạn (Expries) Cookies
Khi một người khách nào đó viếng thăm Website của bạn thì Client sẽ tự tạo ra một Cookies để lưu trữ thông tin của người khách đó, nhưng nếu người đó không truy cập nữa thì chúng ta không nên lưu trữ thông tin của họ nữa để đảm bảo an toàn thông
Trang 25tin và bộ nhớ cho máy tính bằng cách chúng ta dùng đặc tính Expries để xóa bỏ tự động như sau:
Cookie.Expires = “Time”
VD: Dim Cookie as HttpCookie
Cookie = new HttpCookie(“Account”) Cookie.Values.Add(“UserName”, “123”) Cookie.Values.Add(“PasWord”, “123”)
Cookie.Expires = Now.AddDays(3)
c Cách lấy giá trị của Cookies
Khi Client Browser gửi thông tin Cookies tới Server, ta dùng Request Object để thu nhập thông tin đó theo cú pháp sau:
Dim C As HttpCookie
C = Request.Cookies(name)
VD: Dim Cookie as HttpCookie
Cookie = new HttpCookie(“Account”)
Response.Write(C.Values("UserName").ToString()) Response.Write(C.Values("PassWord").ToString())
2.7 Application Object
Đối tượng Application lưu giữ mọi thông tin liên quan đến ứng dụng mà bất kỳ một trang ASP.NET nào cũng đều có thể sử dụng được, đối tượng này được tạo ra ngay khi ứng dụng được khởi động và sẽ tồn tại cùng với chu kỳ sống của ứng dụng
Cú pháp: Application(“ApplicationName”) = “Value”
Trang 26Các điều khiển HTML trên thanh công cụ
Trang 272 ASP.NET Web Control
Sự kiện Page_Init xảy ra đầu tiên khi trang web được yêu cầu
Private Sub Page_Init (…) Handles MyBase.Init
‘Do not modify it using the code editor
Private Sub Page_Load (…) Handles MyBase.Load
‘Put user code to initialize the page here
End Sub
c Page_PreRender
Sự kiện này xả ra khi trang web chuẩn bị được trả về cho Client
Private Sub Page_PreRender (…) Handles MyBase.PreRender
End Sub
Page_Init() Page_Load() Page_PreRender() Page_UnLoad()
Trang 28d Page_UnLoad
Sự kiện này đối lập với sự kiện Page_Init Nếu như 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 được xảy ra sau cùng với tất cả các sự kiện khác
Private Sub Page_UnLoad (…) Handles MyBase.Unload
Private Sub Page_Load (…) Handles MyBase.Load
‘Put user code to initialize the page here
If Not IsPostBack Then
Response.Write (“Đây là lần yêu cầu đầu tiên.”) Else
Response.Write (“Đây là lần yêu cầu sau.”) End If
End Sub
b SmartNavigation
Trong trường hợp nội dung của trang web vượt quá kích thước hiển thị của màn hình và chúng ta đang đọc phần giữa của trang web, khi trang đượ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 sẽ vẫn giữ nguyên vị trí mà chúng ta đang đọc sau khi Reload Đây là thuộc tính kiểu luận lý Giá trị mặc định là false
2.2 Điều khiển cơ bản
Thuộc tính Kiểu Ý nghĩa
(ID) Chuỗi Quy định tên của điều khiển Tên của điều
khiển là duy nhất
Trang 29AccessKey String Quy định ký tự để di chuyển nhanh đến điều
khiển – ký tự xử lý phím nóng
Attributes AttributeCollection Tập hợp các thuộc tính của điều khiển HTML BackColor Color Quy định màu nền của điều khiển
BorderColor Color Quy định màu đường viền của điều khiển
BorderStyle BorderStyle Quy định kiểu đường viền của điều khiển
BorderWidth Unit Quy định độ rộng của đường viền
CssClass String Quy định hình thức hiển thị của điều khiển qua
tên CSS
Enabled Boolean
Quy định điều khiển có được hiển thị hay không Giá trị mặc định của thuộc tính này là True
Font FontInfo Quy định font hiển thị cho điều khiển
ForeColor Color Quy định màu chữ hiển thị trên điều khiển
Height Unit Quy định chiều cao của điều khiển
ToolTip String Dòng chữ sẽ hiển thị khi rê chuột vào điều
khiển Width Unit Quy định độ rộng của điều khiển
2.2.1 Label
Cú pháp:<asp:label runat = “server”><asp: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 được hiển thị trong label được xác định thông qua thuộc tính Text Thuộc tính Text có thể nhận và hiển thị nội dung với các Tag HTML
VD : lblA.Text = “Đây là chuỗi văn bản thường”
lblB.Text = “Đây là chuỗi văn bản được in đậm”
2.2.2 HyperLink
Cú pháp: <asp:HyperLink runat= “server”></asp:HyperLink>
Điều khiển này được sử 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: Chuỗi văn bản sẽ được hiển thị trên điều khiển Trong trường hợp cả
2 thuộc tính ImageURL và Text được thiết lập thì thuộc tính ImageURL được ưu tiên, thuộc tính Text sẽ được hiển thị trong ToolTip
Trang 30 NavigateUrl: Đường dẫn cần liên kết đến
Target:Xác định cửa sổ sẽ hiển thị cho mối liên kết
o _blank: Hiển thị trang liên kết ở cửa sổ mới
o _self: Hiển thị trang liên kết tại chính cửa sổ chứa liên kết đó
o _parent: Hiển thị trang liên kết ở frame cha
VD: <asp:HyperLink runat=“server” id=“hplASP”>
hplASP.Text = “Trang chủ Lạc Hồng”
hplASP.NavigateUrl = http://lhu.edu.vn
hplASP.Target = “_blank”
2.2.3 Textbox
Cú pháp : <asp:TextBox runat = “server”></asp:TextBox>
Là điều khiển dùng để nhập và hiển thị dữ liệu
Các thuộc tính
Text: Nội dung chứa trong TextBox
TextMode: Qui định chức năng của TextBox, có các giá trị sau:
o SingleLine: Hiển thị và nhập liệu 1 dòng văn bản
o MultiLine: Hiển thị và nhập liệu nhiều dòng văn bản
o Password: Hiển thị dấu * thay cho các ký tự có trong TextBox
Rows: Trong thuộc tính TextMode = MultiLine, thuộc tính Rows sẽ qui định
số dòng văn bản được hiển thị
MaxLength: Qui định số ký tự tối đa được nhập vào cho TextBox
Wrap: Thuộc tính này qui định việc hiển thị của văn bản có được phép tự động xuống dòng khi kích thước ngang của điều khiển không đủ để hiển thị dòng nội dung văn bản Giá trị mặc định của thuộc tinh này là True – tự động xuống dòng
Chú ý: Khi thiết lập thuộc tính Wrap = True thì ta phải thiết lập thuộc tính
TextMode = MultiLine
Trang 31
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 dung trong TextBox bị thay đổi hay không Giá trị mặc định của thuộc tính này là False – không tự động PostBack
2.2.4 Image
Cú pháp: <asp:Image runat = “server”></asp:Image>
Điều khiển này dùng để hiển thị hình ảnh lên trang web
Các thuộc tính
ImageURL: Đường dẫn đến tập tin hình ảnh cần hiển thị
AlternateText: Chuỗ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
2.2.5 Button, ImageButton, LinkButton
Các điều khiển Button, ImageButton, LinkButton mặc định đều là các Submit Button, mỗi khi được nhấn và 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 này là Command Button
Các giá trị thuộc tính chung của Button, ImageButton, LinkButton
Text Chuỗi văn bản sẽ 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
Ngoài những thuộc tính trên, điều khiển ImageButton còn có các thuộc tính ImageURL, ImageAlign và AlternateText như điều khiển Image
Button, LinkButton và ImageButton
2.2.6 ListBox và DropDownList
ListBox và DropDownList là hai điều khiển hiển thị danh sách lựa chọn mà người dùng có thể chọn một hoặc nhiều (chỉ dành cho ListBox) Các mục lựa chọn có
Trang 32thể được thêm vào danh sách thông qua lệnh hoặc ở cửa sổ thuộc tính (Property Windows)
a Các thuộc tính
AutoPostBack: Thuộc tính này qui định điều khiển đượ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 – không tự động PostBack
Items: Đâ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 hoặc 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ế, vào lúc thực thi chương trình, thuộc tính này chỉ đọc
- Single: Chỉ được chọn một mục có trong danh sách (mặc định)
- Multiple: Cho phép chọn nhiều lựa chọn
b Xử lý mục chọn
Các thuộc tính sau sẽ giúp chúng ta xác định chỉ số, giá trị của mục đang được chọn Trong trường hợp điều khiển cho phép chọn nhiều, ta duyệt qua các Item trong tập hợp Items, sử dụng thuộc tính Selected của đối tượng Item để kiểm tra xem mục đó
có được chọn hay không
SelectedIndex: Cho biết chỉ số mục đang được chọn Trong trường hợp chọn nhiều mục, SelectedIndex sẽ trả về chỉ số của mục chọn đầu tiên
SelectedItem: Cho biết mục được chọn Trong trường hợp chọn nhiều mục, SelectedItem sẽ trả về mục chọn đầu tiên
SelectedValue: Cho biết giá trị của mục được chọn Trong trường hợp chọn nhiều mục SelectedValue sẽ trả về giá trị mục chọn đầu tiên
c Tìm hiểu về tập hợp Items
Add : Thêm mục mới vào cuối danh sách, sử dụng phương thức Items.Add
Items.Add (<String>)