Common Dialog & User Control

ThS. Nguyễn Hà Giang Khoa CNTT -Hutech

1

Nội Dung

q Giới thiệu Common Dialog q OpenFileDialog q SaveFileDialog q FontDialog q ColorDialog q MessageBox q User Control

Nguyen Ha Giang -2008

2

Common Dialog

n Các dialog thường được sử dụng

q Được warp thành các lớp trong FCL/BCL

OpenFileDialog

ColorDialog

Common Dialog

SaveFileDialog

FontDialog

PrintDialog

Nguyen Ha Giang -2008

3

Common Dialog

n Cách sử dụng theo 2 cách sau

q 1. Kéo thả dialog vào form

n VS sẽ tạo thể hiện chứa trong lớp form

q 2. Khai báo đối tượng và tạo thể hiện của lớp CD n VD: OpenFileDialog oFile = new OpenFileDialog();

g o l a i D n o m m o C

Nguyen Ha Giang -2008

4

Nội Dung

q Giới thiệu Common Dialog q OpenFileDialog q SaveFileDialog q FontDialog q ColorDialog q MessageBox q User Control

Nguyen Ha Giang -2008

5

OpenFileDialog

n Sử dụng để chọn file lưu trên đĩa n Cách sử dụng từ ToolBox

Drag & drop

Code phát sinh tự động

xyz.Designer.cs

Nguyen Ha Giang -2008

6

OpenFileDialog

n Code phát sinh của VS

xyz.Designer.cs

Tạo thể hiện

Hiển thị Form

Nguyen Ha Giang -2008

7

OpenFileDialog

n Code tự viết –không dùng Toolbox

Nguyen Ha Giang -2008

8

OpenFileDialog

Thuộc tính, phương thức

Thuộc tính

FileName

Lấy tên file được chọn

FileNames

Lấy tên tất cả các file được chọn

Filter

Xác định kiểu file cần mở

InitialDirectory

Thư mục khởi tạo

Multiselect

Cho phép chọn nhiều file

Title

Tiêu đề của dialog

Phương thức

ShowDialog

Hiển thị dialog

Sự kiện

FileOk

Xuất hiện khi user kích vào OK

Nguyen Ha Giang -2008

9

Nội Dung

q Giới thiệu Common Dialog q OpenFileDialog q SaveFileDialog q FontDialog q ColorDialog q MessageBox q User Control

Nguyen Ha Giang -2008

10

SaveFileDialog

n Sử dụng để tạo file trên đĩa. n Cách sử dụng

q Sử dụng SaveFileDialog component trên Toolbox

n Tương tự như OpenFileDialog!

q Tạo thể hiện của lớp SaveFileDialog

Nguyen Ha Giang -2008

11

SaveFileDialog

n Demo: nhập văn bản vào textbox, sau đó lưu

xuống file *.txt. q Tạo ứng dụng dụng Windows Form có các control

n 1 label: caption của textbox n 1 textbox: chứa nội dung text do user nhập n 1 button: gọi SaveFileDialog và lưu file n 1 SaveFileDialog: khai báo dialog SaveFile.

Nguyen Ha Giang -2008

12

SaveFileDialog

n Thiết kế form

Drag & drop

Multiline=true

Nguyen Ha Giang -2008

13

SaveFileDialog

n Viết phần xử lý cho button “Lưu file”

System.IO

Nguyen Ha Giang -2008

14

SaveFileDialog

Nguyen Ha Giang -2008

15

SaveFileDialog

n Mở rộng bổ sung phần đọc file text từ demo trên q Open file *.txt và hiển thị nội dung của file trên

TextBox.

n Bổ sung thêm button “Mở file” và kéo thành

phần OpenFileDialog thả vào form

Drag & drop

Nguyen Ha Giang -2008

16

SaveFileDialog

n Viết phần xử lý button “Mở file”

Nguyen Ha Giang -2008

17

SaveFileDialog

n Demo

Hiển thị nội dung file

Nguyen Ha Giang -2008

18

Nội Dung

q Giới thiệu Common Dialog q OpenFileDialog q SaveFileDialog q FontDialog q ColorDialog q MessageBox q User Control

Nguyen Ha Giang -2008

19

FontDialog

n Chức năng hiển thị hộp thoại chọn font chữ

được install trong máy q Trong ứng dụng làm việc với document, đồ họa…

n Sử dụng FontDialog

q Từ ToolBox kéo thả FontDialog vào Form

n Sử dụng trong lúc thiết kế

q Khai báo thể hiện FontDialog và hiển thị

n Viết code

Nguyen Ha Giang -2008

20

FontDialog

Thuộc tính, phương thức thường dùng

Thuộc tính

Font

Get/set font được chọn

Color

Get/set màu của font

ShowColor

Hiển thị hay không hiển thị chọn màu

ShowApply

Hiển thị/ không button Apply

Phương thức

ShowDialog

Hiển thị dialog ra màn hình

Sự kiện

Apply

Kích hoạt khi user chọn apply

Nguyen Ha Giang -2008

21

FontDialog

n Demo: gọi FontDialog thiết lập font cho control n Tạo Form có dạng sau

Label để test font

Drag & drop

Button chọn font

Nguyen Ha Giang -2008

22

FontDialog

n Phần xử lý cho button “Font”

Nguyen Ha Giang -2008

23

FontDialog

Nguyen Ha Giang -2008

24

FontDialog

n Bổ sung chức năng “Apply” của FontDialog

q Khi FontDialog đang hiển thị cho phép user kích

chọn nút Apply (cid:222) label thay đổi font theo.

n Cách thực hiện

q Khai báo có hiện thị button Apply cho FontDialog

n fontDialog1.ShowApply = true n Đăng ký trình xử lý sự kiện cho button “Apply”

q Tạo trình xử lý cho sự kiện “Apply” của

FontDialog

q Đăng ký trình xử lý cho sự kiện Apply của

FontDialog

Nguyen Ha Giang -2008

25

FontDialog

n Code minh họa

Nguyen Ha Giang -2008

26

Nội Dung

q Giới thiệu Common Dialog q OpenFileDialog q SaveFileDialog q FontDialog q ColorDialog q MessageBox q User Control

Nguyen Ha Giang -2008

27

ColorDialog

n Hiển thị chức năng chọn màu n Sử dụng theo 2 cách

q Kéo ColorDialog từ Toolbox thả vào form… q Viết code tạo đối tượng…

n ColorDialog sử dụng giá trị màu có kiểu Color

q Màu ARGB n Alpha n Red n Green n Blue

Nguyen Ha Giang -2008

28

ColorDialog

n Demo chọn màu: chọn màu nền cho form

Drag & drop

Nguyen Ha Giang -2008

29

ColorDialog

n Phần xử lý cho button “Color”

Nguyen Ha Giang -2008

30

Nội Dung

q Giới thiệu Common Dialog q OpenFileDialog q SaveFileDialog q FontDialog q ColorDialog q MessageBox q User Control

Nguyen Ha Giang -2008

31

MessageBox

n Hiển thị hộp thoại chứa thông tin chỉ dẫn đến

user

n Bao gồm các phần

q Text q Button q Symbol

n Lớp MessageBox có phương thức tĩnh Show để

hiển thị dialog. q Bắt giá trị trả về để biết phản ứng của user

Nguyen Ha Giang -2008

32

MessageBox

n Có khoảng 21 phiên bản của Show n Một số phiên bản thường sử dụng

q DialogResult Show(string text); q DialogResult Show(string text, string caption); q DialogResult Show(string text, string caption,

MessageBoxButtons button);

q DialogResult Show(string text, string caption,

MessageBoxButtons button, MessageBoxIcon icon);

q …

Nguyen Ha Giang -2008

33

MessageBox

n Các button hiển thị theo message

q Cho phép user chọn lựa các phản ứng với

message

q Được định nghĩa trong MessageBoxButtons

OK

OKCancel

AbortRetryIgnore

MessageBoxButtons

YesNoCancel

YesNo

RetryCancel

Nguyen Ha Giang -2008

34

MessageBox

n MessageBoxIcon: định nghĩa các icon kèm theo

message

MessageBoxIcon.Asterisk MessageBoxIcon.Information

MessageBoxIcon.Error MessageBoxIcon.Stop MessageBoxIcon.Hand

MessageBoxIcon.Exclamation MessageBoxIcon.Warning

MessageBoxIcon.Question

MessageBoxIcon.None

Nguyen Ha Giang -2008

35

MessageBox

n Một số các MessageBox minh họa

Nguyen Ha Giang -2008

36

Nội Dung

q Giới thiệu Common Dialog q OpenFileDialog q SaveFileDialog q FontDialog q ColorDialog q MessageBox q User Control

Nguyen Ha Giang -2008

37

User Control

n Công việc kéo thả nhóm control thường sử

dụng (cid:222) nhàm chán!

n User control phục vụ mục đích tái sử dụng n Vấn đề:

q Nhóm control phục vụ cho việc login thường xuất

hiện trong ứng dụng

n Yêu cầu:

q Tạo nhóm control phục vụ cho việc login q Nhóm control này bao gồm

n 2 label n 2 textbox

Nguyen Ha Giang -2008

38

User Control

n Bước 1: Tạo ứng dụng Windows Control Library

Nguyen Ha Giang -2008

39

User Control

n Bước 2: thiết kế user control như sau

2 TextBox

2 Label có chứa image

Nguyen Ha Giang -2008

40

User Control

n Khai báo các property cho user control

q Mỗi property gắn với textBox n UserName gắn với txtUID n Password gắn với txtPwd

Nguyen Ha Giang -2008

41

User Control

n Biên dịch user control n Kết quả được file assembly có phần mở rộng là

DLL

n Sử dụng user control trong client app q Add vào phần References của project

n Tạo đối tượng user control, add vào form…

q Add vào ToolBox | Choose Items…

n Kéo user control thả vào form, code phát sinh tự

động

Nguyen Ha Giang -2008

42

User Control

n Tạo ứng dụng Test User control q Tạo ứng dụng Windows Form q Thêm User Control vào ToolBox n Kích chuột phải vào ToolBox n Chọn chức năng Choose Items… n Chọn file DLL của User control vừa tạo

q Kéo user control thả vào form

Nguyen Ha Giang -2008

43

User Control

n Kéo thả user control vào form

Drag & drop

Phát sinh code trong designer.cs

Nguyen Ha Giang -2008

44

User Control

n Sử dụng User Control như control bình thường

trên form.

n Truy cập user control HAGLogin thông qua 2

property đã định nghĩa khi xây dựng control này q UserName: là textBox User Name q Password: là nội dung của textBox Password

Nguyen Ha Giang -2008

45

Tóm tắt

n Common Dialog

q OpenFileDialog -SaveFileDialog q FontDialog -ColorDialog

n MessageBox

q Khai báo và sử dụng q MessageBoxIcon q MessageBoxButtons

n User control

q Xây dựng user control q Sử dụng user control

Nguyen Ha Giang -2008

46