a Tạo th ể hiện của láp SaveFileDialog // tạo thể hiện Save File Dialog SaveFileDialog saveDlg = new SaveFileDialog0; // save dưới dạng txt // hiển thị dialog và lấy giá trị trả về của d
Trang 1User Control
Nguyễn Văn Phong
Trang 3Các dialog thường được sử dụng
° Được warp thành các lớp trong FCL/BCL
Trang 4a 1 Kéo thả dialog vào form
■ vs sẽ tạo thể hiện chứa trong lớp form
a 2 Khai báo đối tượng và tạo thể hiện của lớp CD
■ VD: OpenFileDialog oFile = new OpenFileDialogO;
z Printing
^ Pointer
t 3 i PageSetupDialog PfintOialog PrintDocument
Í PrintPreviewControl PrintPreviewDialog
Ẽ Dialogs
Pointer ColorDialog
Trang 5a Giới thiệu Common Dialog
Trang 6■ sử dụng để chọn file lưu trên đĩa
ỹ l openFileDialogl Windows Form Designer generated codq
Code phát sinh tự động
xyz.Designer.cs
private System.Windows.Forms.OpenFileDialog openFileDialogl;
Trang 7Code phát sinh của vs
private System.Windows.Forms.OpenFileDialog openFileDialogl;
Nguyễn Văn Phong - 2010
Trang 8■ Code tự viết - không dùng Toolbox
// tạo thế hiện OpenFileDialog
OpenFileDialog OFileDlg = new O p e n F i l e D i a l o q (); // thiêt lập các option
// cho phép chọn nhiêu file
Trang 9Thuộc tính, phương thức
InitialDirectory Thư muc khởi tao■ ■
Multiselect Cho phép chọn nhiêu file
Trang 10a Giới thiệu Common Dialog
Trang 11■ sử dụng để tạo file trên đĩa.
■ Cách sử dụng
a Sử dụng SaveFileDialog component trên Toolbox
■ Tương tự như OpenFileDialog!
a Tạo th ể hiện của láp SaveFileDialog
// tạo thể hiện Save File Dialog SaveFileDialog saveDlg = new SaveFileDialog0;
// save dưới dạng txt
// hiển thị dialog và lấy giá trị trả về của dialg DialogResult result = saveDlg.ShowDialog();
// nếu user chọn button "OK"
if (result == DialogResult.OK)
{
// TO DO
} Nguyễn Văn Phong - 2010
Trang 12xuống file *.txt.
a Tạo ứng dụng dụng Windows Form có các control
■ 1 label: caption của textbox
■ 1 textbox: chứa nội dung text do user nhập
■ 1 button: gọi SaveFileDialog và lưu file
■ 1 SaveFileDialog: khai báo dialog SaveFile.
Nguyễn Văn Phong - 2010
Trang 13■ Thiết kê form
a Save File Dialog
- Dialogs
Pointer
•71 ColorDialog JF1 FolderBrowserDialog FontDialog
Trang 1428
29 3Q
// phẩn xử lý chữ button lưu // lưu dạng text
if (saveFileDialogl.ShowDialog() == DialogResult.OK)
{
32 33 34 35 36 37 38
c
// sau khi user nhập tên file cần lưu và nhấn "OK"
Ị Ị tạo stream dể đọc ghi file
Stream myStream = saveFileDialogl.OpenFile();
// tạo dối tượng ghi vào file
StreainlJriter writer = new StreamWriter (myStream) ;
// lưu nội dung text của textboxl vào file
Trang 15ÖCNTT
Q D O AN CO SO Il^D ow nload
Q eclipse
L_3Hag
i_jHaGiang
Q Health _ )H W
Save Cancel
Trang 16MỞ rộng bổ sung phần đọc file text từ demo trên
° Open file *.txt và hiển thị nội dung của file trên TextBox.
Bổ sung thêm button “MỞ file” và kéo thành
t Dialogs
Pointer ColorDialog
J 1 FolderBrowserDialog^
A FontDialog y OpenFileDialog
Trang 17■ Viết phần xử lý button “MỞ file”
43 // chức năng mả file txt và hiển thị nội dung
44 openFileDialogl Filter = "Text File ( * txt) 1 * txt";
45
4 6 if (openFileDialogl ShowDiaJLog () == DialogResult.OK)
48 // tạo stream dọc/ghi file
49 Stream myStream = openFileDialogl O p e n F i l e ();
50 Ị Ị tạo doi tượng dọc file
Trang 18^JModelwofks
Q My Code Snippets
;~ )Mv eBooks
^ M y Music _ J My Notebook Content
£ |M y Pictures OSharpDevelop Projects
l J SMART Notebook
L j SQL Server Management Studio Express
H_JTAl xu6ng ii 5 Visual Studio 20(35
Hien thi ndi• • dung file
Mb file LJu file
Nguyễn Văn Phong - 2010
Trang 19a Giới thiệu Common Dialog
Trang 20■ Chức năng hiển thị hộp thoại chọn font chữ được install trong máy
a Trong ứng dụng làm việc với document, đồ họa
■ sử dụng FontDialog
a Từ ToolB ox kéo thả FontDialog vào Form
■ sử dụng trong lúc thiết kê
a Khai báo thể hiện FontDialog và hiển thị
■ Viết code
Nguyễn Văn Phong - 2010
Trang 21Thuộc tính, phương thức thường dùng
Trang 22■ Tạo Form có dạng sau
Label đ ể test font
Trang 23■ Phần xử lý cho button “Font”
21 // hiển thị chức năng chọn màu
Trang 24'■•Ï Verdana Ref Italic
0 Vinet Hand ITC Bn-,
' ặ Vinhan Bold Italic
Trang 25■ Bổ sung chức năng “Apply” của FontDialog
° Khi FontDialog đang hiển thị cho phép user kích chọn nút Apply => label thay đổi font theo.
■ Cách thực hiện■ ■
a Khai báo có hiện thị button Apply cho FontDialog
■ fontDialogl.ShowApply = true
■ Đăng ký trình xử lý sự kiện cho button “Apply”
□ Tạo trình xử lý cho sự kiện “Apply” của FontDialog
a Đăng ký trình xử lý cho sự kiện Apply của FontDialog
Nguyễn Văn Phong - 2010
Trang 26■ Code minh họa■
28 // hiển thị button Apply
29 fontDialogl.ShowApply = true;
30
31 // đăng ký sự kiện khi button Apply dược nhấn
foiitDialogl Apply += new EventHandler (ChangeFont);
void ChangeFont(object sender, EventArgs e)
Trang 27a Giới thiệu Common Dialog
Trang 28■ Hiển thị chức năng chọn màu
■ sử dụng theo 2 cách
a Kéo ColorDialog từ Toolbox thả vào form
a Viết code tạo đôi tượng
■ ColorDialog sử dụng giá trị màu có kiểu Color
Trang 29■ Demo chọn màu: chọn màu nền cho form■ ■
Trang 30■ Phần xử lý cho button “Color”
Rectangle rect = new Rectangle(0,0,width,Height);
// tạo brush gradient: có màu được chọn -> white
IiinearGradieivtBrush brush = new LinearGradientBrush(rect, colorDialogl.Color, C o l o r white,
LinearGradientMode.Horizontal) ; // tô nen của form
Color
Nguyễn Văn Phong - 2010
Trang 31a Giới thiệu Common Dialog
Trang 32■ Hiển thị hộp thoại chứa thông tin chỉ dẫn đến user
° Bắt giá trị trả về để biết phản ứng của user
Nguyễn Văn Phong - 2010
Trang 33■ Có khoảng 21 phiên bản của Show
■ Một số phiên bản thường sử dụng
a DialogResult Show(string text);
° DialogResult Show(string text, string caption);
° DialogResult Show(string text, string caption,
MessageBoxButtons button);
a DialogResult Show(string text, string caption,
MessageBoxButtons button, MessageBoxIcon icon);
□ ■ ■ ■
Nguyễn Văn Phong - 2010
Trang 34■ Các button hiển thị theo message
a Cho phép user chọn lựa các phản ứng với message
a Được định nghĩa trong MessageBoxButtons
Trang 35■ MessageBoxlcon: định nghĩa các icon kèm theo
message
V MessageBoxlcon.Asterisk MessageBoxlcon.Information
Ỡ
MessageBoxlcon.Error MessageBoxlcon.Stop MessageBoxlcon.Hand
& MessageBoxlcon.Exclamation MessageBoxIcon.Warning
4> MessageBoxlcon.Question
MessageBoxlcon.None
Trang 36■ Một số các MessageBox minh họa
x á c n h â n , 1
C ả n h b á o ® Bạn muôn thoát khỏi ứng dụng? T \ Không kễl nôi CSDL được, thừ lại? Yes j 1 No Retry 1 1 Cancel
T h ô n g b á o
1
C ả n h b á o ® Ỡ
Không truy cập, tập tin không tồn tại!
I ÕK 1
Nguyễn Văn Phong - 2010
Trang 37a Giới thiệu Common Dialog
Trang 38■ Công việc kéo thả nhóm control thường sử
a Tạo nhóm control phục vụ cho việc login
a Nhóm control này bao gồm
■ 2 label
■ 2 textbox
Nguyễn Văn Phong - 2010
Trang 39Bước 1: Tạo ứng dụng Windows Control Library
New Project
Business Intelligence Projects
S Visual C * Windows
£ Smart Device Database Starter Kits
it Other Languages Cb' Other Project Types
V isual Stu d io in stalled te m p ' es
Jc£J Windows Application
^ C o n s o le Applcatlon
¿ E r r ^ t y Project
M y Te m p la te s
J ] Search Onfcne Templates
A project for creating controls to use in Windows applications
.jtf] Windows Application Windows Control Library Console Application
O eate new Solution
V Efrowse
v 0 Create directory for solution
Nguyễn Văn Phong - 2010
Trang 40UserControll.es UserControll.es [Design] start Page
¿L Username Password 2 TextBox
2 Label cồ chứa image
Nguyễn Văn Phong - 2010
Trang 41■ Khai báo các property cho user control
a Mỗi property gán với textBox
■ UserName gắn với txtUID
}
Nguyễn Văn Phong - 2010
Trang 42■ Biên dịch user control■
■ Kết quả được file assembly có phẩn mở rộng là DLL
a Add vào phần References của project
■ Tạo đối tuợng user control, add vào form
a Add vào ToolBox I Choose Items
■ Kéo user control thả vào form, code phát sinh tự
động
Nguyễn Văn Phong - 2010
Trang 43■ Tạo ứng dụng Test User control
a Tạo ứng dụng Windows Form
a Thêm User Control vào ToolBox
■ Kích chuột phải vào ToolBox
■ Chọn chức năng Choose Items
■ Chọn file ■ DLL của User control vừa tạo ■
Nguyễn Văn Phong - 2010
Trang 44private Login.UserControll u3erControlll;
private void InitializeComponent0
<
this.userControlll = new Login.UserControll();
this.buttonl = new System.Windows.Forms.Button(); this.SuspendLayout(); ^
Trang 45■ sử dụng User Control như control bình thường trên form.
■ Truy cập user control Login thông qua 2
property đã định nghĩa khi xây dựng control này
° UserName: là textBox User Name
° Password: là nội dung của textBox Password