Minh họa:
Trong ví dụ liên kết dữ liệu với Table
NhaXuatBan đưa vào 4 Label, điền dữ liệu vào với
thuộc tính Text cho các File tương tứng, thiết đặt tiêu
đề(HeaderText). Tạo phân trang và trình bày tại phía
dưới giữa trang
150 trang |
Chia sẻ: nguyenlam99 | Lượt xem: 1109 | Lượt tải: 0
Bạn đang xem trước 20 trang tài liệu Thiết kế và lập trình website - Chương 5: Các điều khiển trong asp.net, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
1
Chương 5:
CÁC ĐIỀU KHIỂN TRONG ASP.NET
© Dương Thành Phết www.thayphet.net - phetcm@gmail.com
KHOA CAO ĐẲNG THỰC HÀNH
THIẾT KẾ & LẬP TRÌNH WEBSITE
(Chuyên ngành: Đồ Họa Đa Truyền Thông)
2
NỘI DUNG
© Dương Thành Phết www.thayphet.net - phetcm@gmail.com
1. Tổng quan về các controls
2. HTML Control
3. Web Server Controls
4. Validation Controls
5. Web User controls
6. Master Pages
7. Data Controls
3
1. TỔNG QUAN VỀ CÁC CONTROLS
© Dương Thành Phết www.thayphet.net - phetcm@gmail.com
4
2. HTML CONTROL
HTML Control được tạo ra từ các tag HTML tĩnh
thường được sử dụng lập trình ở phía client
Khi sử dụng HTML Control để lập trình phía Server ta
gán thuộc tính runat="Server" cho HTML Control đó được
gọi là HTML Server Control.
© Dương Thành Phết
HTML Control trên Toolbox
www.thayphet.net - phetcm@gmail.com
5
Để chuyển các HTML Control thành các HTML Server
Control, ta chọn Run As Server Control từ menu ngữ cảnh
hoặc gán thuộc tính runat=“Server” cho HTML Control
© Dương Thành Phết www.thayphet.net - phetcm@gmail.com
2. HTML CONTROL
6
3. WEB SERVER CONTROL
Những lý do nên sử dụng Standard Web Control:
Đơn giản, tương tự như Windows Form Controls.
Đồng nhất: Có các thuộc tính giống nhau dễ tìm
hiểu và sử dụng.
Hiệu quả: Tự động phát sinh ra các tag HTML theo
từng loại Browser
© Dương Thành Phết www.thayphet.net - phetcm@gmail.com
7 Bảng liệt kê các thuộc tính chung của các Web control
© Dương Thành Phết
Thuộc tính Ý nghĩa
(ID) Tên của điều khiển. Tên của điều khiển là duy nhất.
AccessKey Ký tự để di chuyển nhanh đến điều khiển - phím nóng.
Attributes Tập hợp các thuộc tính của điều khiển HTML
BackColor Màu nền của điều khiển.
BorderColor Màu đường viền của điều khiển.
BorderStyle Kiểu đường viền của điều khiển.
BorderWidth Độ rộng của đường viền.
CssClass Hình thức hiển thị của điều khiển qua tên CSS.
Enabled Điều khiển có được hiển thị hay không. Mặc định là True.
Font Font hiển thị cho điều khiển
ForeColor Màu chữ hiển thị trên điều khiển
Height Chiều cao của điều khiển
ToolTip Dòng chữ sẽ hiển thị khi rê chuột vào điều khiển.
Width Độ rộng của điều khiển.
www.thayphet.net - phetcm@gmail.com
3. WEB SERVER CONTROL
8
3.1. Label
Được sử dụng để hiển thị và trình bày nội dung văn
bản, chấp nhận hiển thị nội dung với các tag HTML.
Ví dụ:
lblA.Text = "Đây là chuỗi văn bản thường";
lblB.Text ="Còn đây là chuỗi được in đậm";
© Dương Thành Phết www.thayphet.net - phetcm@gmail.com
3. WEB SERVER CONTROL
9
3.2 TextBox
Được dùng để nhập và hiển thị dữ liệu văn bản.
Các thuộc tính:
Text: Nội dung chứa trong Textbox
TextMode:
SingleLine: Hiển thị và nhập liệu 1 dòng
MultiLine: Hiển thị và nhập liệu nhiều dòng
Password: Hiển thị dấu * thay cho các ký tự.
Rows: Số dòng hiển thị nếu textbox có nhiều dòng.
Maxlength: Số ký tự tối đa được nhập
Wrap: Văn bản có được phép tự động xuống dòng
khi độ rộng của textbox không đủ.
© Dương Thành Phết www.thayphet.net - phetcm@gmail.com
3. WEB SERVER CONTROL
10
3.3. Image
Được dùng để hiển thị hình ảnh lên trang Web.
Các thuộc tính:
ImageURL: Đường dẫn tập tin hình ảnh.
AlternateText: Chuỗi văn bản sẽ hiển thị chú thích.
ImageAlign: Vị trí hiển thị giữa hình và nội dung.
NotSet,Left, Middle,TextTop,Right
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
3. WEB SERVER CONTROL
11
3.4. Button, ImageButton, LinkButton
Mặc định là các nút Submit Button, khi được nhấn
vào sẽ PostBack về Server.
Các thuộc tính:
- Text: Chuỗ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.
- 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.
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
3. WEB SERVER CONTROL
12
Ví dụ: Tạo trang web với các điều khiển: Label, Textbox,
Button thực hiện chức năng tính toán như sau:
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Xử lý sự kiện:
protected void btTinhtien_Click(object sender, EventArgs e)
{
int soluong=int.Parse(txtSoluong.Text );
int dongia=int.Parse(txtDongia.Text );
int Thanhtien=soluong * dongia;
txtThanhtien.Text = Thanhtien.ToString();
}
3. WEB SERVER CONTROL
13
3.5. HyperLink
Đượ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: Tập tin ảnh hiển thị trên điều khiển.
Text: Nhãn văn bản hiển thị trên điều khiển.
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
_blank: Hiển thị trang liên kết ở cửa sổ mới.
_self: Hiển thị trang liên kết tại cửa sổ chứa liên kết
_parent: Hiển thị trang liên kết ở frame cha.
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
3. WEB SERVER CONTROL
14
Ví dụ: Tạo trang web gồm 3 điều khiển Hyperlink
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
3. WEB SERVER CONTROL
15
3.6. Listbox và DropdownList
Là điều khiển hiển thị danh sách lựa chọn, có thể
chọn một hoặc nhiều.
Các thuộc tính:
+ AutoPostBack: Có tự động PostBack về Server khi
chỉ số của mục chọn bị thay đổi. Mặc định False
+ Items: Tập chứa các mục chọn của điều khiển. thêm
vào mục chọn qua thuộc tính ListItem Collection Editor.
+ Rows: Chiều cao của ListBox theo số dòng.
+ SelectionMode: Cách chọn các mục trong ListBox.
Single: Chỉ chọn một mục có trong danh sách.
Multiple: Cho phép chọn nhiều mục.
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
3. WEB SERVER CONTROL
16
Tập hợp Items
Add: Thêm mục mới vào cuối danh sách
Items.Add();
Insert: Thêm mục mới vào danh sách tại một vị trí
Items.Insert(,);
Count: Trả về số mục (Item) có trong danh sách.
Items.Count;
Remove: Xóa đối tượng Item tại ra khỏi danh sách.
Items.Remove();
RemoveAt: Xóa item tại vị trí index khỏi danh sách.
Items.RemoveAt();
Clear: Xóa tất cả Item có trong danh sách.
Items.Clear();
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
3. WEB SERVER CONTROL
17
Xử lý mục chọn
Thuộc tính Selected của đối tượng Items[i] để kiểm tra
xem mục thứ i đó có được chọn hay không.
SelectedIndex: Cho biết chỉ số của mục được chọn.
Trong trường hợp chọn nhiều mục SelectedIndex sẽ trả
về chỉ số 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.
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
3. WEB SERVER CONTROL
18
Ví dụ: Tạo trang Web gồm 1 listbox, 2 label , 1 Button khi
click nút chọn sẽ hiện tên các địa danh được chọn.
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
3. WEB SERVER CONTROL
19
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Xử lý sự kiện:
protected void Page_Load(. . . ) {
if (!IsPostBack) {
lstDiadanh.Items.Add("Vịnh Hạ Long");
lstDiadanh.Items.Add("Phan Thiết - Mũi Né");
lstDiadanh.Items.Add("Nha Trang");
.
int n = lstDiadanh.Items.Count;
lbSoDD.Text = n.ToString();
}
}
protected void btChon_Click(. . .) {
lbDiadanh.Text = "";
for (int i = 0; i <= lstDiadanh.Items.Count - 1; i ++) {
if (lstDiadanh.Items[i].Selected)
lbDiadanh.Text += "" + lstDiadanh.Items[i].Value;
}
}
3. WEB SERVER CONTROL
20
3.7. Checkbox, RadioButton
Các thuộc tính
Checked: Trạng thái của mục chọn (chọn hay không)
TextAlign: Vị trí của điều khiển so với chuỗi văn bản.
AutoPostBack: Có được tự động PostBack về Server
khi các mục chọn bị thay đổi, mặc định là False.
GroupName (RadioButton): Tên nhóm, thuộc tính này
được sử dụng để nhóm các điều khiển RadioButton lại
thành 1 nhóm.
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
3. WEB SERVER CONTROL
21
Ví dụ: Tạo trang web gồm Nhóm các RadioButton Giới tính,
Thu nhập, Nhóm Checkbox Ngoại ngữ
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
3. WEB SERVER CONTROL
22
3.8. CheckBoxList, RadioButtonList
Dùng để tạo ra một nhóm các CheckBox/Radio Button, Là
điều khiển danh sách nên có thuộc tính Items chứa tập hợp
các mục chọn như ListBox/DropDownList.
Các thao tác trên tập hợp Items, xử lý mục chọn cũng
tương tự như ListBox/DropDownList.
Tạo mới:
Kéo thả RadioButtonList (Hoặc CheckbocList) vào Form
Chọn Edit Items
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
3. WEB SERVER CONTROL
23
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Các thuộc tính
RepeatColumns: Số cột hiển thị.
RepeatDirection: Hình thức hiển thị
Vertical: Theo chiều dọc
Horizontal: Theo chiều ngang
AutoPostBack: Có được phép tự động PostBack về
Server khi các mục chọn của điều khiển bị thay đổi.
Mặc định là False.
3. WEB SERVER CONTROL
24
Ví dụ: Tạo trang web gồm Nhóm RadioButton Thu nhập
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Xử lý sự kiện:
Private Sub rblThu_nhap_SelectedIndexChanged()
lblThu_nhap.Text = "Bạn chọn thu nhập: " +
rblThu_nhap.SelectedItem.Text;
End Sub
3. WEB SERVER CONTROL
25
Ví dụ: Tạo trang web khi click nút Đăng ký thì hiện thị các
thông tin được chọn.
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
3. WEB SERVER CONTROL
26
3.9. Điều khiển Literal
Tương tự như điều khiển Label, Literal được sử
dụng để hiển thị chuỗi văn bản trên trang Web.
Điểm khác biệt là khi thi hành, Literal không tạo
thêm tag Html, còn Label sẽ tạo ra tag span (được sử
dụng để lập trình ở phía client).
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
3. WEB SERVER CONTROL
27
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Ví dụ:
Lệnh xử lý:
protected void Page_Load(object sender, EventArgs e)
{
Label1.Text="Đây là chuỗi ký tự trong label";
Literal1.Text = " Đây là chuỗi ký tự trong Literial";
}
Khi thiết kế.
Xem source:
Đây là chuỗi ký tự trong label
Đây là chuỗi ký tự trong Literial
28
3.10. Điều khiển AdRotator
Được dùng để tạo ra các ảnh quảng cáo (tại 1 vùng
sẽ có nhiều ảnh, xuất hiện theo tuần xuất), nó tự động
thay đổi các hình ảnh mỗi khi có yêu cầu (PostBack về
server).
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
3. WEB SERVER CONTROL
29
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Thuộc tính
AdvertisementFile: Tên tập tin dữ liệu (dưới dạng xml) cho
điều khiển. Cú pháp của tập tin Advertisement (*.xml)
Đường dẫn tập tin hình ảnh
Đường dẫn liên kết
Chuỗi văn bản Tooltip
Từ khóa dùng để lọc hình ảnh
Tần suất hiển thị của ảnh
Lưu ý: Các giá trị có phân biệt chữ Hoa chữ thường
3. WEB SERVER CONTROL
30
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Sự kiện
AdCreated: Xảy ra khi điều khiển tạo ra các quảng cáo
3. WEB SERVER CONTROL
31
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Ví dụ: Tạo mẫu Quangcao sử dụng điều khiển AdRotator
Bước 1. Thiết kế giao diện
Bước 2. Tạo tập tin dữ liệu: Quangcao.xml
Sử dụng chức năng Add New Item từ thực đơn ngữ
cảnh
Chọn XML File trong hộp thoại Add New Item
3. WEB SERVER CONTROL
32
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Nhập vào nội dung cho tập tin Quangcao.xml
Pictures\Baihatviet.gif
Web Nhạc bài hát việt
Music
10
3. WEB SERVER CONTROL
33
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Chuyển màn hình qua trang Data, nhập liệu trực tiếp:
Click phải màn hình đang code chọn View Data Grid
3. WEB SERVER CONTROL
34
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Bước 3. Thiết lập thuộc tính cho điều khiển adQuangcao
AdvertisementFile: Quangcao.xml
Target: _blank
KeywordFilter: Không thiết lập (Hiển thị tất cả ảnh)
Bước 4. Thi hành ứng dụng
3. WEB SERVER CONTROL
35
3.11. Điều khiển Calendar
Dùng để hiển thị và cập nhật dữ liệu kiểu ngày
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
3. WEB SERVER CONTROL
36
Thuộc tính
DayHeaderStyle: Tiêu đề của các ngày trong tuần
DayStyle: Các ngày trong điều khiển.
NextPrevStyle: Tháng trước/sau của tháng đang chọn.
SeleltedDayStyle: Ngày đang được chọn.
TitleStyle: Tiêu đề của tháng được chọn
TodayDayStyle: Ngày hiện hành (trên server).
WeekendDayStyle: Các ngày cuối tuần (thứ 7, chủ nhật)
OtherMonthDayStyle: Các ngày không nằm trong tháng hiện tại.
--------
SelectedDate: Giá trị ngày được chọn trên điều khiển
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
3. WEB SERVER CONTROL
37
Sự kiện
SelectionChanged: Sự kiện này xảy ra khi chọn một ngày
VisibleMonthChanged: Xự kiện xảy ra khi chọn một tháng
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
3. WEB SERVER CONTROL
38
Ví dụ: Tạo Calendard trên trang web
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Bước 1: Tạo Calendard vào trang
Bước 2: Chọn mẫu định dạng: Click phải /Auto Format
3. WEB SERVER CONTROL
39
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Xử lý sự kiện:
protected void Page_Load(object sender, EventArgs e){
lbNgay.Text = "Hôm nay ngày " +
DateTime.Today.ToString ("dd/MM/yyyy");
}
protected void Calendar1_SelectionChanged1( . . . .) {
lbThongbao.Text ="Bạn đang chọn " +
Calendar1.SelectedDate.ToString("dd/MM/yyyy");
}
3. WEB SERVER CONTROL
40
3.12. Điều khiển File Upload.
Sử dụng Upload file từ chính ứng dụng Web. File
sau khi Upload có thể lưu trữ ở 1 nơi nào đó trên
webserver.
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Thuộc tính Ý nghĩa
Enable Vô hiệu hoá điều khiển FileUpload.
FileBytes Lấy nội dung file đã được upload như một mảng Byte.
FileContent Lấy nội dung của file đã được upload theo dòng dữ liệu
FileName Lấy tên file được Upload
HasFile Trả về giá trị true khi File được Upload
3. WEB SERVER CONTROL
41
Các phương thức:
Focus: Chuyển con trỏ đến điều khiển FileUpload.
SaveAs: Cho phép lưu file được upload lên hệ thống.
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
3. WEB SERVER CONTROL
42
Ví dụ: Tạo điều khiển File Upload
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Thiết kế và tạo FileUpload vào trang
Xử lý sự kiện:
protected void Button1_Click(object sender, EventArgs e) {
string sTenfile ;
//Tách lấy tên tập tin
sTenfile = FileUpload1.FileName;
//Thực hiện chép tập tin lên thư mục Upload
FileUpload1.SaveAs(MapPath("~/Upload/" + sTenfile));
lbThongbao.Text = "Đã upload thành công" ;
}
3. WEB SERVER CONTROL
43
3.13. Điều khiển Panel và PlaceHolder
Sử dùng để chứa các điều khiển khác.
Thuộc tính Visible= True thì các điều khiển chứa bên
trong sẽ được hiển thị và ngược lại.
Tuy nhiên, điều khiển Panel cho phép chúng ta kéo
những điều khiển vào bên trong nó lúc thiết kế, còn điều
khiển PlaceHolder thì không.
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
3. WEB SERVER CONTROL
44
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Thuộc tính
DefaultButton: Định nghĩa button mặc định trong panel
(sẽ được thực hiện khi nhấn Enter)
Direction: Thiết đặt hướng hiển thị nội dung được đưa ra
trong panel:NotSet, LeftToRight, RightToLeft.
GroupingText: Trình bày Panel như 1 Fieldset với một
chú giải riêng biệt.
HorizontalAlign: Chỉ ra hướng ngang thể hiện nội
dung của panel:Center, Justify, Left, NotSet, Right.
ScrollBars: Hiển thị scrollbars khi nội dung trong panel
vượt quá kích thước: Auto, Both, Horizontal, None,
Vertical.
3. WEB SERVER CONTROL
45
Ví dụ: Tạo trang sử dụng Panel
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Thiết kế:
3. WEB SERVER CONTROL
46
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Xử lý sự kiện:
protected void Page_Load(object sender, EventArgs e) {
for (int i = 1; i < 100; i++) {
buletnghenghiep.Items.Add("Nghề "+i.ToString());
}
}
protected void chkhtsothich_CheckedChanged(. . . .) {
if (chksothich.Checked == true)
panelsothich.Visible = true;
else
panelsothich.Visible = false;
}
protected void chkhtnghenghiep_CheckedChanged(. . . ) {
if (chknghenghiep.Checked == true)
panelnghenghiep.Visible = true;
else
panelnghenghiep.Visible = false;
}
3. WEB SERVER CONTROL
47
3.14. Điều khiển hiển thị các trang – View và MultiView
Cho phép ẩn hoặc hiện các phần khác nhau của
trang Web, tiện ích khi tạo một TabPage để chia 1 trang
web có độ dài lớn thành các phần để hiển thị.
Điều khiển MultiView chứa đựng 1 hoặc nhiều điều
khiển View.
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
3. WEB SERVER CONTROL
48
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Thuộc tính
ActiveViewIndex: Lựa chọn điều khiển View được
đưa ra hiển thị bằng chỉ số Index
Views: Cho phép lấy về tập hợp các điều khiển View
chứa đựng trong điều khiển MultiView.
Phương thức
GetActiveView: Cho phép lấy về thông tin của
điều khiển View được lựa chọn.
SetActiveView: Cho phép thiết lập điều khiển
View được hiển thị.
Sự kiện
ActiveViewChanged:Khi điều khiển View được
chọn
3. WEB SERVER CONTROL
49
Ví dụ: Tạo trang sử dụng MultiView
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Thiết kế:
Tạo 1 Multiview1 gồm 3 View (View1 View2, View3)
Tạo Control Menu1 gồm 3 Tab (Tab1, Tab2, Tab3)
Tạo Control Menu vào Form
3. WEB SERVER CONTROL
50
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Chọn Edit Menu Item
Lần lượt khái báo các nhãn (Text) là: Tab 1, Tab 2, Tab 3
và các giá trị (Value) tương ứng là: 0 , 1, 2
Thuộc tính Orientation: Horizaltal (Menu hướng ngang)
3. WEB SERVER CONTROL
51
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Bổ sung nội dung vào các view tương ứng
3. WEB SERVER CONTROL
52
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Xử lý sự kiện:
void Menu1_MenuItemClick(object sender, MenuEventArgs e){
int index = int.Parse(e.Item.Value);
MultiView1.ActiveViewIndex = index;
}
void Page_Load(object sender, EventArgs e){
if (!IsPostBack){
MultiView1.ActiveViewIndex = 0;
}
}
3. WEB SERVER CONTROL
53
4. CÁC ĐIỀU KHIỂN KIỂM TRA DỮ LIỆU-VALIDATION
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
4.1 Giới thiệu chung
4.2. Điều khiển Required Field Validator
4.3. Điều khiển Compare Validator
4.4. Điều khiển Range Validator
4.5. Điều khiển Regular Expression Validator
4.6. Điều khiển Custom Validator
4.7. Điều khiển Validation Summary
54
4.1. GIỚI THIỆU CHUNG
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
55
Mỗi khi PostBack về Server, trang Web luôn kiểm tra tính
hợp lệ dữ liệu (nếu có yêu cầu khi thiết kế). Nếu dữ liệu
không hợp lệ (bỏ trống, vi phạm miền giá trị, mật khẩu
nhập lại không đúng, ), trang web sẽ không thể
PostBack về Server.
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
4.1. GIỚI THIỆU CHUNG
56
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Trang Dangky.htm với ngôn ngữ HTML & Javascript
Khó khăn trong thiết kế và lập trình (trên 100 dòng code)
4.1. GIỚI THIỆU CHUNG
57
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Trang Dangkythanhvien.aspx với MS Visual studio chỉ
còn là quan tâm đến các thuộc tính cần khai báo
4.1. GIỚI THIỆU CHUNG
58
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
4.2. ĐIỀU KHIỂN REQUIRED FIELD VALIDATOR
Công dụng:
Dùng để kiểm tra giá trị trong điều khiển phải
được nhập. Để kiểm tra ràng buộc khác rỗng (Not null)
Thuộc tính:
59
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
4.3. ĐIỀU KHIỂN COMPARE VALIDATOR
Công dụng:
Để so sánh giá trị của điều khiển với giá trị của
điều khiển khác hoặc một giá trị được xác định trước.
Sử dụng điều khiển này để kiểm tra ràng buộc
miền giá trị, kiểu dữ liệu, liên thuộc tính.
60
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Thuộc tính:
ControlToCompare: Tên điều khiển cần so sánh.
ValueToCompare: Giá trị để so sánh
Operator: Qui định phép so sánh (=, >, >=, ),
kiểm tra kiểu dữ liệu ( DataTypeCheck)
Type: Qui định kiểu dữ liệu để kiểm tra hoặc so
sánh(String, Integer, Double, Date, Currency)
4.3. ĐIỀU KHIỂN COMPARE VALIDATOR
61
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
4.4. ĐIỀU KHIỂN RANGE VALIDATOR
Công dụng:
Để kiểm tra giá trị trong điều khiển có nằm trong
đoạn [min-max] (kiểm tra ràng buộc miền giá trị).
62
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Thuộc tính:
- MinimumValue: Giá trị nhỏ nhất.
- MaximumValue: Giá trị lớn nhất.
- Type: Xác định kiểu để kiểm tra dữ liệu. Có thể thực
hiện kiểm tra trên các kiểu: String, Integer, Double,
Date, Currency
4.4. ĐIỀU KHIỂN RANGE VALIDATOR
63
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
4.5. ĐIỀU KHIỂN REGULAR EXPRESSION VALIDATOR
Công dụng:
Để kiểm tra giá trị của điều khiển phải theo mẫu
được qui định trước như: địa chỉ email, số điện thoại,
mã vùng, số chứng minh thư,
64
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Thuộc tính:
ValidationExpression: Qui định mẫu kiểm tra dữ liệu
4.5. ĐIỀU KHIỂN REGULAR EXPRESSION VALIDATOR
65
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Bảng mô tả các ký hiệu sử dụng trong Validation Expression
4.5. ĐIỀU KHIỂN REGULAR EXPRESSION VALIDATOR
66
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
4.6. ĐIỀU KHIỂN CUSTOM VALIDATOR
Công dụng:
Điều khiển này cho phép bạn tự viết hàm xử lý
kiểm tra lỗi.
Sự kiện:
ServerValidate: Đặt các xử lý kiểm tra dữ liệu
trong sự kiện này. Việc kiểm tra này được thực hiện
ở Server.
Ví dụ: Xử lý kiểm tra dữ liệu nhập tại điều khiển
txtSoA có phải là số chẵn hay không.
67
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
4.7. ĐIỀU KHIỂN VALIDATION SUMMARY
Công dụng:
Để hiển thị ra bảng lỗi - tất cả các lỗi hiện có
trên trang Web. Nếu điều khiển nào có dữ liệu không
hợp lệ, chuỗi thông báo lỗi - giá trị thuộc tính
ErrorMessage của Validation Control sẽ được hiển
thị.
Nếu giá trị của thuộc tính ErrorMessage không
được xác định, thông báo lỗi đó sẽ không được xuất
hiện trong bảng lỗi
68
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Thuộc tính:
- HeaderText: Dòng tiêu đề của thông báo lỗi
- ShowMessageBox: Qui định bảng thông báo lỗi có
được phép hiển thị như cửa sổ MessageBox hay không.
- ShowSummary: Qui định bảng thông báo lỗi có được
phép hiển thị hay không.
4.7. ĐIỀU KHIỂN VALIDATION SUMMARY
69
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Ví dụ: Tạo trang Dangkykhachang Sử dụng các điều
khiển ValidateControl để kiểm tra dữ liệu nhập trên các
điều khiển có trong hồ sơ đăng ký khách hàng.
4.7. ĐIỀU KHIỂN VALIDATION SUMMARY
70
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
4.7. ĐIỀU KHIỂN VALIDATION SUMMARY
71
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Thuộc tính Text của các điều khiển kiểm tra dữ liệu đều là: (*)
4.7. ĐIỀU KHIỂN VALIDATION SUMMARY
72
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Xử lý sự kiện:
Private Sub butDang_ky_Click()
lblThong_bao.Text = "Đăng ký thành công";
End Sub
4.7. ĐIỀU KHIỂN VALIDATION SUMMARY
73
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Các thông báo lỗi xuất hiện
qua hộp thoại khi dữ liệu nhập
không hợp lệ:
4.7. ĐIỀU KHIỂN VALIDATION SUMMARY
74
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Nếu tất cả đều hợp lệ
4.7. ĐIỀU KHIỂN VALIDATION SUMMARY
75
5. WEB USER CONTROLS
5.1 Giới thiệu
Khi kết hợp các control để tạo thành một control mới gọi
là Web user control (UC)
Sử dụng UC cũng giống như sử dụng thủ tục, hàm
khả năng tái sử dụng UC trên các trang web
Phần mở rộng của UC là: .ascx
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
76
5.2 Tạo và sử dụng User control
Tạo mới User control:
Tạo mới 1 Web user control
Thiết kế giống như thiết kế 1 trang aspx
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Chọn: Web User Control
Đặt tên: *.ascx
5. WEB USER CONTROLS
77
Sử dụng User control:
Kéo và thả UC vào trang aspx, lúc đó trang aspx sẽ
xuất hiện tag
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
5. WEB USER CONTROLS
78
6. MASTER PAGES
6.1 Giới thiệu
Master pages cho phép tạo 1 bố cục nhất quán trên
các trang web trong cùng 1 website (tương tự template)
Nội dung thể hiển trên trình duyệt là sự kết hợp giữa
trang .master -master page và trang .aspx (hoặc .ascx) -
content page
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Master page là tập tin có phần mở rộng .master
Thao tác thiết kế: Giống như trang aspx, nhưng phải
bổ sung ít nhất một điều khiển ContentPlaceHolder
79
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Master page Content page
Trang kết quả
6. MASTER PAGES
80
6.2 Tạo trang Master
Bước 1: Tạo mới Item chọn icon Master Page và đặt
tên trang: *.master
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
6. MASTER PAGES
81
Bước 2: Thiết kế bố cục chung (có thể sử dụng User
control) và bổ sung ContentplaceHolder vào trang
master
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
6. MASTER PAGES
82
6.3 Sử dụng trang Master
Bước 1: Tạo mới trang web (.aspx) khai báo sử dụng
trang master
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
6. MASTER PAGES
83
Bước 2: Thiết kế bổ sung nội dụng trên trang *.aspx
(có thể kéo các User control vào)
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
6. MASTER PAGES
84
7. ĐIỀU LIÊN KẾT DỮ LIỆU–DATA SOURCE CONTROL
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
7.1 Điều khiển kết nối cơ sở dữ liệu
7.2 Điều khiển liên kết cơ sở dữ liệu
85
7.1. ĐIỀU KHIỂN KẾT NỐI CSDL–DATA SOURCE CONTROL
Là các điều khiển dùng để chứa nguồn dữ liệu được
rút trích từ các hệ QT CSDL như: Access, SQLServer,
XML, Ocracle . . .
Có các điều khiển Data-Source sau: SQLDataSource,
Access Data Source, XML Data Source, . . .
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
86
7.1.1 ĐIỀU KHIỂN SQLDATASOURCE
Dùng để kết nối CSDL trong các hệ quản trị CSDL
SQLServer, Ocracle Server, . . .
Chọn đối tượng CSDL như Table, View, Procedure
hay câu lệnh SQL và khai báo điều kiện lọc (Where) với
nhiều cách như: Giá trị định sẳn, đối tượng Session,
Request.Form, Request.QueryString . . .
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Tạo kết nối
Kéo điều khiển SQLDataSource từ Tollbox vào trang
Chọn Conigure Data Source
87
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Nếu trước đó đã tạo kết nối thì chọn kết nối đã có.
Ngược lại để tạo mới kết nối thì chọn New Connection
Tạo kết nối CSDL mới
7.1.1 ĐIỀU KHIỂN SQLDATASOURCE
88
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Chọn QTCSDL (Microsoft SQLServer)
Chọn Continue để tiếp tục
7.1.1 ĐIỀU KHIỂN SQLDATASOURCE
89
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Chọn Hệ QT CSDL
Khai báo các thông số cho kết nối
Chọn Tên Server
Chọn thông tin đăng nhập
Chọn tên CSDL
Kiểm tra kết nối
Đồng ý kết nối
7.1.1 ĐIỀU KHIỂN SQLDATASOURCE
90
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Đặt tên cho kết nối
Tên kết nối
7.1.1 ĐIỀU KHIỂN SQLDATASOURCE
91
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Xác định nguồn dữ liệu từ Table, View hay câu lệnh
SQL có thể chỉ định điều kiện lọc dữ liệu, sắp xếp hay
các chỉ định vcho xử lý thêm, xoá, sửa
Xác định nguồn dữ liệu
Từ câu lệnh SQL hay
Từ Table, View
Xác định điều kiện
Chỉ định sắp xếp
Các lệnh thê, xoá, sửa
7.1.1 ĐIỀU KHIỂN SQLDATASOURCE
92
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Chọn Test Query để kiểm tra kết quả nguồn dữ liệu.
Chọn Finish để hòan thành
7.1.1 ĐIỀU KHIỂN SQLDATASOURCE
93
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Điều khiển SQL DataSource và tham số Request.QueryString
Để lọc dữ liệu theo điều kiện thì giá trị tham số có thể
được gán trực tiếp thông qua đối tượng
Request.Querystring (Truyền tham số qua liên kết)
Khi click vào liên kết trang có địa chỉ kèm theo tham số dạng:
. . ./SachNXB.aspx?MaNXB=3
7.1.1 ĐIỀU KHIỂN SQLDATASOURCE
94
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Thực hiện:
Tạo trang NhaXB.aspx là danh mục nhà xuất bản
Chọn Edit Column từ GiridView Task
7.1.1 ĐIỀU KHIỂN SQLDATASOURCE
95
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
7.1.1 ĐIỀU KHIỂN SQLDATASOURCE
96
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Với các thuộc tính:
HeaderText: Nhãn tiêu đề cột
Text: Nhãn hiện thị trong tất cả các ô
DatTextField: Giá trị từ 1 field chỉ định trong nguồn DL
DataNavigateUrlFields: Danh mục tên các tham số ghi
cách nhau bởi dấu ,
DataNavigateUrlFormatting: Địa chỉ trang liên kết kèm
tham số dạng: ~/SachNXB.aspx?MaNXB={0}
Giá trị tham số ghi dưới dạng chỉ số các tham số được
khai báo trong DataNavigateUrlFields bắt đầu là 0 và cách
nhau dấu ,
7.1.1 ĐIỀU KHIỂN SQLDATASOURCE
97
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Tạo trang hiện thị dữ liệu với nguồn dữ liệu có tham
số qua liên kết (Request.QueryString).
Xác định nguồn dữ liệu, sau đó chọn Where để chỉ
định điều kiện
7.1.1 ĐIỀU KHIỂN SQLDATASOURCE
98
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Columns: Tên cột làm điều kiện
Operator: Toán tử so sánh
Source: Loại tham số (QueryString)
QueryString field: Tên tham số đã truyền
Chọn Add để chấp nhận thêm tham số
7.1.1 ĐIỀU KHIỂN SQLDATASOURCE
99
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Columns: Tên cột làm điều kiện
Operator: Toán tử so sánh
Source: Loại tham số (QueryString)
QueryString field: Tên tham số đã truyền
Chọn Add để chấp nhận thêm tham số
7.1.1 ĐIỀU KHIỂN SQLDATASOURCE
100
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Thi hành xem kết quả
7.1.1 ĐIỀU KHIỂN SQLDATASOURCE
101
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Điều khiển SQL DataSource và tham số Request.Form
Để lọc dữ liệu trong nguồn dữ liệu theo điều kiện với
giá trị tham số là giá trị trên form.
Thực hiện:
Tạo trang Lietkesach.aspx gồm:
1 Textbox thuộc tính ID: MaNXB
1 Button thuộc tính PostbackURL:
~/Lietkesach.aspx (Chính trang thiết kế)
Tạo SqlDataSource với nguồn dữ liệu:
7.1.1 ĐIỀU KHIỂN SQLDATASOURCE
102
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Tạo SqlDataSource với nguồn dữ liệu như sau:
7.1.1 ĐIỀU KHIỂN SQLDATASOURCE
103
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Columns: Tên cột làm điều kiện
Operator: Toán tử so sánh
Source: Loại tham số (Form)
Form field: Tên tham số đã truyền (Tên Textbox)
Chọn Add để chấp nhận thêm tham số
7.1.1 ĐIỀU KHIỂN SQLDATASOURCE
104
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Điều khiển SQL DataSource và tham số là các Controls
Có thể khai báo tham số trong điều khiển
SqlDataSource mà giá trị được lấy từ điều khiển
trình chủ.
Ví dụ thiết kế trang SachtheoCD.aspx thực hiện liệt
kê danh mục sách có chủ đề được chọn từ điều
khiển DropdownList
7.1.1 ĐIỀU KHIỂN SQLDATASOURCE
105
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Thực hiện
Thiết kế Dropdownlist (ddlChude) từ Table Chude
Đặt thuộc tính
ID: ddlChude
DataSourceID: SqlDataSource1
DataTextField: TenCD (Field hiện thị)
AutoPostBack: True
DataValuefield: MaCD (Field để truyền tham số)
7.1.1 ĐIỀU KHIỂN SQLDATASOURCE
106
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
GridView (GridView1) Với nguồn dữ liệu từ Table Sach
Và tham số điều kiện (Where)
7.1.1 ĐIỀU KHIỂN SQLDATASOURCE
107
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Columns: Tên cột làm điều kiện
Operator: Toán tử so sánh
Source: Loại tham số (Control)
ControlID: Tên tham số đã truyền
Chọn Add để chấp nhận thêm tham số
7.1.1 ĐIỀU KHIỂN SQLDATASOURCE
108
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Điều khiển SQL DataSource và Procedure
Ta có thể sử dụng điều khiển kết nối CSDL
SqlDatasource để truy cập gọi Stored Procedure
trong CSDL SQL Server.
Ví dụ: Ta có Procedure Sachtheogia liệt kê các
quyển sách với điều kiện Giá từ 2 tham số là Giatu
và Giaden
Create Proc Sachtheogia
@Giatu int, @Giaden Int
as
Select *
From sach
Where Dongia Between @Giatu and @Giaden
7.1.1 ĐIỀU KHIỂN SQLDATASOURCE
109
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Khi cấu hình cho điều khiển SQLDataSource
Chọn loại nguồn dữ liệu là từ Procedure
7.1.1 ĐIỀU KHIỂN SQLDATASOURCE
110
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Chọn tên Procedure
7.1.1 ĐIỀU KHIỂN SQLDATASOURCE
111
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Xác định giá trị cho các tham số của Procedure
7.1.1 ĐIỀU KHIỂN SQLDATASOURCE
112
7.1.2 ĐIỀU KHIỂN ACCESS DATASOURCE
Dùng để kết nối với cơ sở dữ liệu Access MDB).
Thực hiện Tạo AccessDataSource từ thanh Toolbox.
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Chọn Configure Data Source . . .: Để thực hiện kết nối
113
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Xác định nguồn dữ liệu và điều kiện tham số như
SQLData Source
7.1.2 ĐIỀU KHIỂN ACCESS DATASOURCE
114
7.1.3 ĐIỀU KHIỂN XMLDATASOURCE
Điều khiển XMLDataSource được sử dụng để kết nối
CSDL định dạng XML.
Thực hiện: Tạo tập tin XML (DSSinhvien).
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
<Sinhvien MaSV="SV01" HotenSV="Trần Văn Nam"
Diachi="123 Trần Hưng Đạo, Q5" Email="nam@gmail.com" />
<Sinhvien MaSV="SV02" HotenSV="Nguyễn Thị Lý"
Diachi="45 Hai Bà Trưng, Q1" Email="lythi@yahoo.com" />
<Sinhvien MaSV="SV03" HotenSV="Nguyễn Thị Bình"
Diachi="31 Lý Thường Kiệt,TB" Email="kiet@gmail.com"/>
115
Tạo XMLDataSource từ Toolbox.
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Chọn Configure Data Source . . .: Để thực hiện kết nối
7.1.3 ĐIỀU KHIỂN XMLDATASOURCE
116
Chọn tập tin XML.
Chọn OK để hoàn tất
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
7.1.3 ĐIỀU KHIỂN XMLDATASOURCE
117
7.2. ĐIỀU KHIỂN LIÊN KẾT CƠ SỞ DỮ LIỆU
7.2.1 Gridview
7.2.2 DataList
7.2.3 Repeater
7.2.4 Detailview & FormView
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
118
7.2.1 GRIDVIEW
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Giới thiệu:
- GridView là một điều khiển khá linh hoạt và hiệu quả
trong việc hiển thị, định dạng và thao tác với dữ liệu.
- Cho phép thực hiện sắp xếp dữ liệu, phân trang với
sự hỗ trợ khá tốt của Visual .Net trong quá trình thiết
kế.
119
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Tạo GridView vào trang
Kéo Control GridView vào trang
7.2.1 GRIDVIEW
120
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Định dạng tự động
Chọn những mẫu định dạng có sẳn Gridview
bằng cách Chọn Auto Format từ khung Gridview Task
7.2.1 GRIDVIEW
121
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Kết nối nguồn dữ liệu
Thực hiện kết nối nguồn dữ liệu với cơ sở dữ liệu
SQLServer, Access, XML. .
Tại mục Choose Data Source: New Data Source
(Hoặc chọn Datasource đã được tạo trước đó)
Ghi chú: Tạo Datasource như được trình bày trước
7.2.1 GRIDVIEW
122
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Thi hành xem kết quả:
7.2.1 GRIDVIEW
123
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Thêm cột
Trong cửa sổ Gridview Task chọn : Add New Column
Chọn Loại field : BoundField
Tiêu đề côt : Header Text
Tên field dữ liệu: DataField
Ok hòan thành
7.2.1 GRIDVIEW
124
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Hiệu chỉnh các cột
Trong cửa sổ Gridview Task chọn : Edit Column
7.2.1 GRIDVIEW
125
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
AvailableFields: Chọn lọai Field liên kết dữ liệu
BoundField: Cột dạng Textbox.
Checkbox Field: Cột dạng Checkbox.
Hyperlink Field: Cột dạng liên kết.
Button Field: Cột dạng nút lệnh
CommandField: Cột dạng nút lệnh được thiết kế sẵn
Select: Nút lệnh chọn dòng dữ liệu
Edit, Cancel, Update: Các nút cập nhật d.liệu
Delete: Nút lệnh xóa dòng dữ liệu
TemplateField: Cột do người dùng tự thiết kế.
7.2.1 GRIDVIEW
126
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Convert this Field into a Template Column: Chuyển
cột hiện hành thành cột dạng Template Column.
BoundColumn properties: Thông tin chi tiết cho các cột
HeaderText, Footer Text: Tiêu đề trên/dưới của cột
Header Image: Hình hiển thị trên tiêu đề cột.
Sort Expression: Biểu thức sắp xếp của cột.
Visible: Qui định cột có được hiển thị hay không.
DataField: Qui định tên field dữ liệu cần hiển thị.
Data formatting expression: Biểu thức định dạng
{0:}.
Vd: {0:000.00}, {0:0.##}
{0:dd/MM/yyyy}, {0:hh/mm/ss tt}
7.2.1 GRIDVIEW
127
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Thiết lập các thuộc tính định dạng lưới
Chọn GridView Properties
- ShowHeader/ShowFooter: Hiện / Ẩn Phần đầu và
chân của GridView
7.2.1 GRIDVIEW
128
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
- HeaderStyle/FooterStyle: Định dạng dòng Header/Footer
7.2.1 GRIDVIEW
129
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
- RowStyleAlternatingRowStyle: Định dạng dòng dữ liệu
lẽ/chẵn:
7.2.1 GRIDVIEW
130
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
- AlowPaging : Phân trang
Page size:Qui định số dòng/trang
Possition: Qui định vị trí
hiển thị của bộ nút di
chuyển.
Mode: Qui định hình thức
hiển thị của bộ nút di
chuyển.
7.2.1 GRIDVIEW
131
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
- AllowSorting: Sắp xếp
7.2.1 GRIDVIEW
132
7.2.2 ĐIỀU KHIỂN DATALIST
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Giới thiệu:
Như điều khiển Gridview, điều khiển DataList được
sử dụng để hiển thị dữ liệu. Tuy nhiên, đối với DataList,
chúng ta phải tự thiết kế hình thức hiển thị dữ liệu (giống
như Template Column của GridView)
133
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Một số thuộc tính cần chú ý
RepeatDirection: Qui định hướng hiển thị dữ liệu
oHorizontal: Hiển thị dữ liệu theo chiều ngang
oVertical: Hiển thị dữ liệu theo chiều đứng
RepeatColumns: Qui định số cột hiển thị
7.2.2 ĐIỀU KHIỂN DATALIST
134
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
- Thiết kế hình thức hiển thị cho DataList cũng tương
tự như thiết kế cho cột Template Column của GridView
- Chọn Edit Template từ thực đơn ngữ cảnh để thực
hiện thiết kế hình thức hiển thị cho DataList.
7.2.2 ĐIỀU KHIỂN DATALIST
135
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Ghi chú:
Để công việc thiết kế được dễ dàng, thực hiện
thiết kế ở bên ngoài điều khiển DataList. Sử dụng
Table để định vị trí các điều khiển. Sau khi thiết kế
hoàn tất, kéo kết quả vào vị trí hiển thị trong DataList.
7.2.2 ĐIỀU KHIỂN DATALIST
136
7.2.3 ĐIỀU KHIỂN REPEATER
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Giới thiệu:
Như DataList & DataGrid, điều khiển Repeater
dùng để hiển thị dữ liệu. Tuy nhiên phải tự thiết kế hình
thức hiển thị thông qua các tag HTML.
137
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
HeaderTemplate>
Nội dung hiển thị cho tiêu đề
Nội dung hiển thị cho các mục dữ liệu dòng lẻ.
Nội dung hiển thị cho các mục dữ liệu chẳn.
Nội dung hiển thị giữa các dòng dữ liệu
Nội dung hiển thị cho tiêu đề dưới.
:
7.2.3 ĐIỀU KHIỂN REPEATER
138
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Ví dụ:
Bước 1: Tạo mới điều khiển Repeater: rptChudesach
vào trang Web
Bước 2: Kết nối và tạo nguồn dữ liệu cho điều khiển từ
Table Chude với các cột: MaCD, Tenchude
Bước 3:. Chuyển trang Web qua dạng code HTM bổ
sung các tag sau:
7.2.3 ĐIỀU KHIỂN REPEATER
139
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Mã CĐ
Tên CĐ
140
7.2.4 DETAILVIEW & FORMVIEW
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Giới thiệu:
Hai điều khiển này cho phép làm việc với một
trường dữ liệu đơn tại mỗi thời điểm. Thực hiện được
chức năng xem, thay đổi, thêm mới hay xoá, di chuyển
sang trang tiếp theo hay quay lại trang trước.
141
Detailview
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Hiển thị dữ liệu với DetailView
DetailView được đưa ra hiển thị như 1
bảng()trong HTML để hiển thị dữ liệu 1 bản ghi.
Ví dụ: Trang XemthongtinKH.aspx
7.2.4 DETAILVIEW & FORMVIEW
142
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Sử dụng Fields với điều khiển DetailView
DetailView hỗ trợ tất cả các Field như GridView :
BoundField,CheckBoxField,CommandField,ButtonField,
HyperLinkField, ImageField, TemplateField
7.2.4 DETAILVIEW & FORMVIEW
143
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Xử lý phân trang với điều khiển DetailView
Để tạo phân trang chỉ định thuộc tính
AllowPaging=”true” cho điều khiển DetailView. Với các
thuộc tính định dạng thuộc nhóm: Pagersettings
7.2.4 DETAILVIEW & FORMVIEW
144
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Minh họa:
Trong ví dụ liên kết dữ liệu với Table Khachhang
đưa vào 5 BoundField và một CheckBoxField, điền dữ
liệu vào với thuộc tính DataField và thiết đặt tiêu dề
(HeaderText). Tạo phân trang và trình bày tại góc trên
bên phải.
7.2.4 DETAILVIEW & FORMVIEW
145
Formview
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Hiển thị dữ liệu với FormView
FormView dùng để hiển thị dữ liệu với các điều
khiển tùy biến cho dữ liệu một bản ghi. Ví dụ: Trang
XemthongtinNXB.aspx
7.2.4 DETAILVIEW & FORMVIEW
146
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Trình bày dữ liệu sử dụng Edit Template
Tạo FormView vào trang và liên kết dữ liệu
Tại cửa sổ thiết kế chọn Edit Tempalte từ cửa sổ
FormView Task
7.2.4 DETAILVIEW & FORMVIEW
147
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Thiết kế trình bày với các Control điều khiển tương tự
như khi thiết kế DataList với các điều khiển tùy biến
7.2.4 DETAILVIEW & FORMVIEW
148
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Xử lý phân trang với điều khiển FormView
Để tạo phân trang chỉ định thuộc tính
AllowPaging=”true” cho điều khiển Form. Với các thuộc
tính định dạng thuộc nhóm: Pagersettings
7.2.4 DETAILVIEW & FORMVIEW
149
www.thayphet.net - phetcm@gmail.com © Dương Thành Phết
Minh họa:
Trong ví dụ liên kết dữ liệu với Table
NhaXuatBan đưa vào 4 Label, điền dữ liệu vào với
thuộc tính Text cho các File tương tứng, thiết đặt tiêu
đề(HeaderText). Tạo phân trang và trình bày tại phía
dưới giữa trang
7.2.4 DETAILVIEW & FORMVIEW
150
Chương 5:
CÁC ĐIỀU KHIỂN TRONG ASP.NET
© Dương Thành Phết www.thayphet.net - phetcm@gmail.com
KHOA CAO ĐẲNG THỰC HÀNH
THE END.
Các file đính kèm theo tài liệu này:
- 05_chuong05_1771.pdf