1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Giáo trình Lập trình C2 (Nghề Lập trình máy tính)

133 13 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 133
Dung lượng 13 MB

Cấu trúc

  • GIÁO TRÌNH

  • LỜI GIỚI THIỆU

  • MÔ ĐUN:LẬP TRÌNH C#2

  • Mã mô đun: MĐ 16

  • - Về năng lực tự chủ và trách nhiệm

  • Bài 1: Xửa lý ngoại lệ

    • 1. Phát sinh và bắt giữ ngoại lệ

    • 2. Những đối tượng ngoại lệ

  • Bài 2: Lập trình Visual Studio.Net

    • 1. Lập trình với Visual Studiou.Net

    • 2. Thêm và điều chỉnh các điều khiển

  • Bài 3: Tạo thực đơn

    • 1. Tạo thực đơn chính

  • Trong cửa sổ Solution Explorer Chuột phải vào tên Project-> Chọn Add -> Windows Form

  • Gõ tên Form:

  • frmMenu.cs

    • 2. Tạo thực đơn nghữ cảnh

  • Kéo và thả ContextMenuStrip vào Form

  • 1. Tạo Project Menu chưa form sau

  • 2. Tạo Project menu2 chứa Form có menu

  • 3. Tạo menu ngữ cảnh

  • Bài 4: Tạo thanh trạng thái

    • 1. Tạo thanh trạng thái

    • Bài tập

  • Bài 5: Tạo hộp thoại

    • 1. Tạo hộp thoại thông điệp

    • 2. Sử dụng phương thức Form.Close

    • 3. Tạo hộp thoại Modal

    • 4. Tạo hộp thoại Modaless

  • Bài tập

  • Tạo form khi nhấn vào mỗi nút sẽ hiển thị ra hộp thoại tương ứng

  • Bài 6: Các hộp thoại tập tin

    • 6.1. Tập tin và đường dẫn

    • Khái niệm về các loại tập tin

    • Xử lý hệ thống tập tin và thư mục

    • Xử lý đọc ghi tập tin

    • 6.2. Tạo hộp thoại lưu tập tin

  • Title: Tiêu đề của hộp thoại lưu tập tin

  • Ví dụ: file.Title= “Save as”

  • InitialDirectory: Thư mục khởi tạo hiển thị bởi hộp thoạilưutập tin.

  • Cú pháp:

  • OpenFileDialog_name.InitialDirectory=@ “Đường_dẫn”

  • Ví dụ: file.InitialDirectory= @“C:”

  • FileName:

  • + Trả lại đường dẫn đến tập tin được chọn trong hộp thoại lưu tập tin.

  • + Gán giá trị cho TextBox: File name trong hộp thoại mở tập tin

  • Filter

  • Thiết lập lọc loại tập tin xuất hiện trong cửa sổ hiện thị nội dung của thư mục đang được chọn. Xuất hiện trong hộp "Save as type" trong hộp thoại lưu tập tin.

  • - Cú pháp:

  • SaveFileDialog_name.Filter= ten_chuoi1(Mô_tả_đuôi_tệp)|*.duoi1;*.duoi2;…| [ten_chuoi2(Mô_tả_đuôi_tệp)|*.duoi1;*.duoi2;…|

  • …]

  • - Ví dụ 1:

  • Phương thức:

  • ShowDialog(): Hiển thị hộp thoại lưu tập tin.

  • Trong cửa sổ Solution Explorer Chuột phải vào tên Project-> Chọn Add -> Windows Form

  • Gõ tên Form:

  • frmSaveFile.cs

  • Code cho sự kiện Click của nút Save:

  • - Khai báo đối tượng thuộc lớp SaveFileDialog

  • - Thiết lập các thuộc tính

  • - Gọi phương thức ShowDialog

    • 6. 3. Tạo hộp thoại mở tập in

  • Title: Tiêu đề của hộp thoại mở tập tin

  • Ví dụ: opFile.Title= “Open”

  • InitialDirectory: Thư mục khởi tạo hiển thị bởi hộp thoạimở tập tin.

  • Cú pháp:

  • OpenFileDialog_name.InitialDirectory=@ “Đường_dẫn”

  • Ví dụ: opFile.InitialDirectory= @“C:”

  • Multiselect: thuộc tính kiểu Boolean có thể nhận 1 trong 2 giá trị:

  • + Giá trị là false (mặc định) : cho phép lựa chọn 1 tập tin

  • + Giá trị là true cho phép người dùng chọn nhiều tập tin

  • FileName:

  • + Trả lại đường dẫn đến tập tin được chọn trong hộp thoại mở tập tin.

  • + Gán giá trị cho TextBox: File name trong hộp thoại mở tập tin

  • FileNames

  • Nếu thuộc tính Multiselect=true, thuộctính này sẽ trả về một mảng tên tập tin mà người dùng chọntrong hộp thoại mở tập tin

  • Filter

  • Thiết lập lọc loại tập tin xuất hiện trong cửa sổ hiện thị nội dung của thư mục đang được chọn. Xuất hiện trong hộp "Files of type" trong hộp thoại mở tập tin.

  • - Cú pháp:

  • OpenFileDialog_name.Filter= ten_chuoi1(Mô_tả_đuôi_tệp)|*.duoi1;*.duoi2;…| [ten_chuoi2(Mô_tả_đuôi_tệp)|*.duoi1;*.duoi2;…|

  • …]

  • - Ví dụ 1:

  • opFile. Filter =

  • "Image(*.jpg;*.jpeg;*.gif;*.png;*.bmp)|*.jpg;*.jpeg;*.gif;*.png;*.bmp";

  • Ví dụ 2:

  • opFile. Filter = “All File(*.*)|*.*|

  • Document(*.doc;*.dot;*.html;*.url)|*.doc;*.dot;*.html;*.url";

  • Phương thức:

  • ShowDialog(): Hiển thị hộp thoại mở tập tin.

  • Bước 1: Tạo Form trên Project

  • Trong cửa sổ Solution Explorer Chuột phải vào tên Project-> Chọn Add -> Windows Form

  • Gõ tên Form:

  • frmOpenFile.cs

  • Bước 2: Tạo giao diện

  • Bước 3: Viết code

  • Code cho sự kiện Click của nút Open:

  • - Khai báo đối tượng thuộc lớp OpenFileDialog

  • - Thiết lập các thuộc tính

  • - Gọi phương thức ShowDialog

  • - Xử lý tập tin đã chọn

  • Bước 4: Biên dịch DebugBuild Solution - F6

  • Bước 5: Chạy Form

  • DebugStart Debugging- F5

  • Bài tập

  • 1. Tạo phần mền Notepad

  • Khi nhấn vào

  • New tạo ra một file mới

  • Bài 7: Sử dụng các đối tượng

    • 1. Sử dụng TextBox, Button, Label

  • Trong cửa sổ Solution Explorer Chuột phải vào tên Project-> Chọn Add -> Windows Form

  • Gõ tên Form:

  • frmLabelTextboxButton.cs

  • a. Code cho sự kiện Click của nút Đăng nhập:

    • 2. Sử dụng ListBox

  • Trong cửa sổ Solution Explorer Chuột phải vào tên Project-> Chọn Add -> Windows Form

  • Gõ tên Form:

  • frmListBox.cs

  • a. Code cho sự kiện Click của nút Add:

  • b. Code cho sự kiện Click của nút Remove:

    • 3. Sử dụng ComboBox

  • Trong cửa sổ Solution Explorer Chuột phải vào tên Project-> Chọn Add -> Windows Form

  • Gõ tên Form:

  • frmComboBox.cs

  • a. Code cho sự kiện Load Form:

  • b. Code cho sự kiện SelectedIndexChanged của combobox font:

    • 4. Sử dụng ListView

  • Trong cửa sổ Solution Explorer Chuột phải vào tên Project-> Chọn Add -> Windows Form

  • Gõ tên Form:

  • frmListView.cs

  • - Code cho sự kiện click nút New:

    • 5. Sử dụng TreeView

      • 5.1. Cấu trúc cây và điều khiển TreeView

      • 5.2. Các thuộc tính, phương thức, sự kiện của lớp TreeNode

      • 5.3. Khởi tạo TreeView

  • Trong cửa sổ Solution Explorer Chuột phải vào tên Project-> Chọn Add -> Windows Form

  • Gõ tên Form:

  • frmTreeView.cs

    • Bài tập

    • 2. Viết chương trình gồm 1 form trong đó có 1 button và 1 label hiển thị số lần nhấn button đó.

    • 3. Thiết kế giao diện và cài đặt chương trình như sau:

  • Bài 8: Một số tính năng khác

  • - Khởi động phần mền Visual C# 2010

  • - File New Project

  • - Chọn Windows Form Application

  • - Gõ tên project: project_MDI

  • - Trong cửa sổ Solution Explorer Chuột phải vào tên Project-> Chọn Add -> Windows Form

  • - Gõ tên Form:

  • frmParent.cs

  • - Trong cửa sổ Solution Explorer Chuột phải vào tên Project-> Chọn Add -> Windows Form

  • - Gõ tên Form:

  • frmChild.cs

  • Bài tập

  • 1. Tạo project quanlydiem và tạo Form frmMain là Form cha chứa các form con.

  • - Khi chọn Quản lý điểm trong thực đơn Quản lý sẽ hiển thị Form con frmdiem

  • Bài 9: Truy cập và xử lý cơ sở dữ liệu

    • 1. Kết nối dữ liệu

  • - Chuột phải tên Project Chọn Add Chọn Class

  • - Gõ tên lớp trong mục name

  • clsKetnoi.cs

  • - Viết code

  • + Khai báo không gian tên

  • + Khai báo đối tượng lớp

  • SqlConnection

  • + Khai báo xâu chứa chuỗi kết nối

  • + Hàm tạo không đối

  • + Hàm tạo có đối khởi tạo cho chuỗi kết nối trong 2 trường hợp (Đặc quyền Windows hay SQL)

  • + Phương thức Mở kết nối

  • Gán chuối kết nối cho thuộc tính ConnectionSring

  • Gọi phương thức Open

  • của đối tượng Conn thuộc lớp SqlConnection

  • + Phương thức đóng kết nối

  • Gọi phương thức Close()

  • - Trong cửa sổ Solution Explorer Chuột phải vào tên Project-> Chọn Add -> Windows Form

  • - Gõ tên Form:

  • frmKetnoi.cs

    • 2. Thao tác với dữ liêu: Thêm, sửa, xóa, lọc dữ liệu

  • Trong cửa sổ Solution Explorer Chuột phải vào tên Project-> Chọn Add -> Windows Form

  • Gõ tên Form:

  • frmCNHang.cs

  • tblSinhVien(MaSV,Hoten,Ngaysinh, Noisinh, Gioitinh Diachi, Makhoa).

  • tblKhoa(Makhoa, Tenkhoa)

  • tblMonHoc(Mamon, Tenmon, Makhoa, Sohocphan, Giaovien)

  • tblDiem(Mamon, MaSV, Diem)

  • Bài 10: Lập báo cáo với CrystalReport

    • 1. Lập báo cáo bằng Winzard

    • 2. Lập báo cáo không sử dụng Winzard

  • Madg

  • Manv

  • Maloai

  • Masach

    • MUONTRA

  • Manv

  • Madg

Nội dung

Xửa lý ngoại lệ

Phát sinh và bắt giữ ngoại lệ

Một Exception (ngoại lệ) là vấn đề phát sinh trong quá trình thực thi chương trình Trong C#, Exception phản ánh tình huống bất thường xảy ra khi chương trình đang chạy, chẳng hạn như việc chia cho số 0.

Xử lý ngoại lệ trong C# cho phép truyền điều khiển giữa các phần của chương trình thông qua bốn từ khóa chính: try, catch, finally và throw.

Một khối try xác định mã mà trong đó có thể xảy ra ngoại lệ đặc biệt, và nó thường được theo sau bởi một hoặc nhiều khối catch để xử lý các ngoại lệ đó.

 catch: Một chương trình bắt một ngoại lệ với một ngoại lệ được xử lý tại chỗ Từ khóa catch chỉ bắt một ngoại lệ.

Khóa finally được sử dụng để đảm bảo thực hiện một tập hợp các báo cáo, bất kể có xảy ra ngoại lệ hay không Ví dụ, khi mở một tập tin, thao tác đóng file sẽ luôn được thực hiện, đảm bảo tài nguyên được giải phóng đúng cách.

 throw: Một chương trình ném một ngoại lệ khi một vấn đề xuất hiện. Điều này được thực hiện bằng cách sử dụng từ khóa throw.

 Dùng Try-catch để xử lý ngoại lệ

 Đặt code có khả năng dẫn đến ngoại lệ vào khối “try”

 Cung cấp các khối “catch” theo sau “try”

 Có thể cung cấp tất cả catch cho các lỗi nếu muốn xử lý, bằng cách sử dụng các lớp exception thích hợp

 Nếu không cung cấp catch cho một ngoại lệ, thì exception này đượn lan truyền lên trên.

 Khối “{…}” bắt buộc phải có, khác với “{…}” trong if hay for

 Đặt bất cứ câu lệnh nào có khả năng phát sinh ra ngoại lệ

 Đặt một hay nhiều ngay sau khối try

 Không có lệnh nào chen giữa hai khối catch của một try

 Cú pháp khối catch như sau catch (Exception-class [var1]) {

// xử lý ngoại lệ 1 } catch (Exception-class [var2]) {

Code có khả năng dẫn đến lỗi

Tham số exception được catch Đoạn xử lý với tình huống có lỗi

 Khi một exception được ném ra

 Luồng thực thi sẽ nhảy vào khối catch xử lý nó.

 Một số đoạn code giải phóng tài nguyên có thể bị bỏ qua Open File

Read Data // ngoại lệ được phát sinh Close File // đoạn code này bị bỏ qua, dù file chưa đóng

 Khối try-catch có phần option là finally

 Sử dụng để dọn dẹp các tài nguyên đang nắm giữ

Phát sinh một ngoại lệ: sử dụng từ khóa throw throw new System.Exception();

Khi có ngoại lệ xảy ra, việc thực thi sẽ bị ngừng lại ngay lập tức trong khi CLR tìm kiếm trình xử lý ngoại lệ Nếu không tìm thấy trình xử lý trong phương thức hiện tại, CLR sẽ tiếp tục tìm kiếm trong các phương thức gọi cho đến khi phát hiện được Nếu CLR trở về lớp Main() mà không tìm thấy bất kỳ trình xử lý nào, chương trình sẽ kết thúc.

Những đối tượng ngoại lệ

 Ngoại lệ phát sinh bởi chương trình

 Ngoại lệ được tạo bởi CLR

 Lớp System.Exception là cơ sở cho tất cả lớp trong C#

 2 lớp kế thừa từ lớp này:

 ApplicationException: thường làm lớp cơ bản cho lớp ngoại lệ phát sinh từ ứng dụng

 SystemException: do CLR phát sinh

Một số lớp Exception thường dùng

Lớp ngoại lệ Mô tả

System.IO.IOException Xử lý lỗi I/O

System.IndexOutOfRangeException Xử lý các lỗi phát sinh khi một phương pháp đề cập đến một chỉ số mảng nằm ngoài phạm vi.

System.ArrayTypeMismatchException Xử lý các lỗi phát sinh khi loại chưa phù hợp với các kiểu mảng.

System.NullReferenceException Xử lý các lỗi phát sinh từ một đối tượng null.

System.DivideByZeroException Xử lý các lỗi phát sinh từ việc chia cho số không.

System.InvalidCastException Xử lý các lỗi phát sinh trong quá trình phân loại.

System.OutOfMemoryException Xử lý các lỗi được tạo ra từ bộ nhớ không đủ.

System.StackOverflowException Xử lý các lỗi phát sinh từ tràn stack.

Lập trình Visual Studio.Net

Lập trình với Visual Studiou.Net

- Giao diện của Visual Studio C# 2010 Express

+New Project: Tạo Project mới

+ Open Project: Mở Project đã tạo

+ Recent Projects: Các Project mới tạo gần đây nhất

+ Các thuộc tính của Form: Chứa trong cửa sổ Properties

Một số thuộc tính thường dùng

(name) Tên Form Nó như một biến vậy Quan trọng

AllowDrop Cho phép kéo thả

+GrowOnly: cho phép thay đổi kích thước form +GrowAndShrink: không cho phép thay đôi kích thước form

ContexMenuStrip Menu xuất hiện khi chuột phải lên Form

Cursor Con trỏ chuột khi rê trên form

Cho phép nhận phím hay không (cái này kết hợp với sự kiện nhận phím) Opacity Độ trong suốt của form

ShowInTaskbar Hiện thị ở thanh taskbar khi chạy form (true/false)

Vị trí xuất hiện của form +CenterScreen: Giữa màn hình +CenterParent: Giữa Form gọi ra nó (form cha) TopMost Hiển thị đè lên các form khác

WindowState Trạng thái của form

Text Chữ hiển thị khi form chạy

TT Nội dung Yêu cầu kỹ thuật

+ Gõ tên dự án vào mục Name

Tạo Project với tên chính xác

Bước 2 Thêm Form mới vào Project

+ Chọn cửa sổ Reluion Explorer

+ Chuột phải vào tên Dự án

+ Gõ tên Form trong mục Name

Text: Chào mừng các bạn đến với

Thiết lập chính xác thuộc tính

- Chọn cửa sổ Solution Explorer

- Chuột phải vào lớp Program.cs

- Thay thế tên form cần chạy vào mục

Sai hỏng thường gặp, nguyên nhân và biện pháp phòng tránh/ khắc phục

- Nguyên nhân Ở bước 1, chọn sai loại Project

+ Chọn New Project + Chọn Windows Forms Application + Gõ tên dự án vào mục Name

Thêm và điều chỉnh các điều khiển

Toolbox bao gồm các nhóm điều khiển

- All Windows Form: bao gồm tất cả các điều khiển dùng để tạo windows form

- Common Controls: Các điều khiển thông thường

- Container bao gồm các điều khiển có thể chứa các điều khiển khác

- Menu & Toolbars: Các điều khiển dùng để tạo thanh thực đơn và thanh trạng thái.

- Datta: bao gồm các điều khiển làm việc với dữ liệu

- Printing: Điều khiển in ấn

- Dialogs: Bao gồm các điều khiển tạo các loại hộp thoại

* Sắp xếp các điều khiển

+ Chọn kiểu sắp xếp trên thanh Layout

- Sử dụng thuộc tính Dock của điều khiển

+ Chọn thuộc tính Dock\ Chọn loại định vị điều khiển

Điều khiển sẽ chiếm toàn bộ phần phía trên của Form hoặc của điều khiển chứa nó, trong khi đó, điều khiển cũng sẽ chiếm trọn phần bên trái của Form hoặc của điều khiển mà nó nằm trong đó.

Right: Điều khiển sẽ chiếm chọn phần bên phải của Form hoặc của điều khiển chứa nó

Bottom: Điều khiển sẽ chiếm chọn phần bên dưới của Form hoặc của điều khiển chứa nó

Fill: Điều khiển sẽ chiếm chọn phần còn lại của Form hoặc của điều khiển chứa nó

None: Không thay đổi b Trình tự thực hiện

TT Nội dung Yêu cầu kỹ thuật

Tạo Form mới trên Project

+ Chọn cửa sổ Reluion Explorer

+ Chuột phải vào tên Dự án

+ Gõ tên Form trong mục Name frmControl

- Kéo và thả GroupBox 2 lần vào form tạo groupBox1, groupBox2

Thiết lập thuộc tính: groupBox1.Dock=Top groupBox2.Dock=Fill

- Kéo và thả Lable 5 lần vào form tạo lable1, lable2, lable3, lable4, lable5.

- Kéo và thả TextBox vào form 3 lần

Kéo và thả chính xác các điều khiển tạo textBox1, textBox2, textBox3

- Kéo và thả 1 DateTimePicker và thiết lập thuộc tính Format=Short

- Kéo và thả Button 2 lần tạo button1, button2

* Thiết lập các thuộc tính

To configure properties in the application, set the following attributes: groupBox1.Text to "Information," groupBox2.Text to "Registration," label1.Text to "Full Name," label2.Text to "Address," label3.Text to "Date of Birth," and label4.Text to "Gender." Additionally, assign the names textBox1.Name as "txtHoten," textBox2.Name as "txtDiachi," textBox3.Name as "txtGioitinh," and dateTimePicker1.Name as "dtNgaysinh," while ensuring button1 is properly defined.

Thiết lập chính xác thuộc tính

- Click đúp chuột trái vào nút Đăng

Viết code chính xác ký

- Viết code privatevoid btDK_Click(object sender, EventArgs e)

{ lbDK.Text = "Họ tên: " + txtHoten.Text + "\n Địa chỉ:

" + txtDiachi.Text + "\n Ngày sinh:" + dtNgaysinh.Text +

- Click đúp chuột trái vào nút Thoát

- Viết code privatevoid btThoat_Click(object sender, EventArgs e)

- Chọn cửa sổ Solution Explorer

- Chuột phải vào lớp Program.cs

- Thay thế tên form cần chạy vào mục

Application.Run(new Ten_form());

1 Tạo Project Modau có chứa

- Form frmchao có dòng tiêu đề “CHÀO MỪNG ĐẾN VỚI LẬP TRÌNH C# 1 – LẬP TRÌNH WINDOWS FORM”

Yêu cầu dòng tiêu đề chạy từ phải qua trái

Yêu cầu khi nhấn kết nối sẽ hiển thị thông tin nhập vào thành một hàng dước mục Password

Tạo thực đơn

Tạo thực đơn chính

- Dùng để nhóm các lệnh cùng nhau

- Menu có thể chứa: menu ngang, menu dọc, menu con, các biểu tượng, các phím nóng, các đường phân các

* Các thuộc tính thường dùng

- Name: Tên menu được dùng trong mã lệnh

- Checked: Có/Không dòng menu xuất hiện checked Ngầm định là False

- SortCutKey: Đặt phím nóng cho menu

- ShowShortcut: Có/ Không phím nóng hiển thị trên dòng menu, ngầm định là true

- Text: Xuất hiện trên dòng menu

Click: Xảy ra khi một dòng của menu được click chuột hoặc ấn phím nóng Ngầm định khi nháy đúp chuột trong chế độ thiết kế

* Viết lệnh cho dòng của menu gọi 1 Form

= new ;

.Show() hoặc .ShowDialog();

TT Nội dung Yêu cầu kỹ thuật

Trong cửa sổ Solution Explorer

Chuột phải vào tên Project->

Gõ tên Form: frmMenu.cs

Tạo form với tên form chính xác

- Kéo và thả MenuStrip vào Form tạo menuStrip1

Tạo giao diện chính xác

- Tạo menu con của File (menu cấp 2)

- Tạo menu con của View

- Kéo và thả PictureBox vào Form tạo pictureBox1

- Code cho sự kiện Click vào

Load: privatevoid loadToolStripMenuItem_Clic k(object sender, EventArgs e)

OpenFileDialog dlg Viết code chính xác newOpenFileDialog(); dlg.Title = "Load Photo"; dlg.Filter = "jpg files (*.jpg)|*.jpg|All files (*.*)|*.*"; if (dlg.ShowDialog() = DialogResult.OK)

{ pictureBox1.Image newBitmap(dlg.OpenFile()); } catch (Exception ex)

MessageBox.Show("Unable to load file: "+ ex.Message);

} normalToolStripMenuItem.E nabled = true; strecthToolStripMenuItem.E nabled = true; centerToolStripMenuItem.E nabled = true;

- Code cho sự kiện click củaexitToolStripMenuItem privatevoid exitToolStripMenuItem_Clic k(object sender, EventArgs e)

- Code cho sự kiện click củanormalToolStripMenuItem privatevoid normalToolStripMenuItem_ Click(object sender,

- Code cho sự kiện click củastrecthToolStripMenuItem privatevoid strecthToolStripMenuItem_ Click(object sender,

{ pictureBox1.SizeMode PictureBoxSizeMode.Stretc hImage;

- Code cho sự kiện click củacenterToolStripMenuItem privatevoid centerToolStripMenuItem_C lick(object sender,

{ pictureBox1.SizeMode PictureBoxSizeMode.Center Image;

Lựa chọn chính xác Bước

Tạo thực đơn nghữ cảnh

* Chức năng: Menu ngữ cảnh hiển thị khi click chuột phải trên đối tượng của Form hoặc trên form

* Để tạo ra menu ngữ cảnh chúng ta sử dụng công cụ ContextMenuStrip trong nhóm Menus & Toolbars trong Toolbox

* Hiển thị menu ngữ cảnh

- Chọn đối tượng hoặc Form

- Đặt thuộc tính ContextMenuStrip cuả đối tượng được chọn là tên của menu ngữ cảnh. b Trình tự thực hiện ( TrênForm của phần tạo thực đơn chính )

TT Nội dung Yêu cầu kỹ

Kéo và thả ContextMenuStrip vào Form

Kéo thả chính xác Bước

Tạo các thành phần cho menu ngữ cảnh bao gồm: View, Exit menu View bao gồm Normal,

Tạo giao diện chính xác Bước

Gán Menu ngữ cảnh cho đối tượng

Chọn đúng đối tượng, Thiết lập đúng thuộc tính Bước

{ pictureBox1.SizeMode PictureBoxSizeMode.Norm al;

{ pictureBox1.SizeMode PictureBoxSizeMode.Stretc hImage;

} privatevoid centeToolStripMenuItem_C lick(object sender,

{ pictureBox1.SizeMode PictureBoxSizeMode.Cente rImage;

} privatevoid eToolStripMenuItem_Click( object sender, EventArgs e)

Lựa chọn chính xác Bước

Lựa chọn chính xác Chạy được form.Bài tập

1 Tạo Project Menu chưa form sau

2 Tạo Project menu2 chứa Form có menu

Tạo thanh trạng thái

Tạo thanh trạng thái

Thanh công trạng thái là thanh nằm ngang dưới đáy cửa sổ, bao gồm nhiều phần tử để hiển thị thông tin về trạng thái hoạt động của ứng dụng Mỗi phần tử có thể là văn bản, biểu tượng hoặc thanh tiến trình.

+ StatusLabel: là một văn bản

+ DropDownButton: Nút nhấn trải ra một danh sách với biểu tượng là hình ảnh + SplitButton: Nút nhấn trải ra một danh sách với biểu tượng là hình ảnh

- Nhấp chuột kéo và thả đối tượng Status vào form

- Thay đổi thuộc tính cho loại trạng thái

Bài tập

Giới thiệu: Bài học này cung cấp các kiến thức về hộp thoại: Modal và

- Phân biệt được hai loại hộp thoại Modal và Modaless;

- Biết cách sử dụng hộp thoại thông điệp;

- Sử dụng được phương thức Form.Close;

- Thực hiện được các biện pháp an toàn cho máy tính

1 Tạo hộp thoại thông điệp

* Các dạng hộp hoại thông điệp

MessageBox.Show(string text, string caption, MessageBoxButtons button, MessageBoxIcon icon, MessageBoxDefaultButton defaultbutton);

- text: chuỗi hiển thị nội dung thông báo

- caption: Tiêu đề hộp thoại

- MessageBoxButtons: nút của hộp thoại bao gồm các giá trị

+ OK: hộp thoại chỉ có nút OK

+ OKCancel: Hộp thoại gồm 2 nút OK và Cancel

+ YesNo: Hộp thoại gồm 2 nút Yes và No

+ YesNoCancel: hộp thoại gồm 3 nút Yes, No và Cancel

- MessageBoxIcon: Biểu tượng của hộp thoại

Tạo hộp thoại

Tạo hộp thoại thông điệp

* Các dạng hộp hoại thông điệp

MessageBox.Show(string text, string caption, MessageBoxButtons button, MessageBoxIcon icon, MessageBoxDefaultButton defaultbutton);

- text: chuỗi hiển thị nội dung thông báo

- caption: Tiêu đề hộp thoại

- MessageBoxButtons: nút của hộp thoại bao gồm các giá trị

+ OK: hộp thoại chỉ có nút OK

+ OKCancel: Hộp thoại gồm 2 nút OK và Cancel

+ YesNo: Hộp thoại gồm 2 nút Yes và No

+ YesNoCancel: hộp thoại gồm 3 nút Yes, No và Cancel

- MessageBoxIcon: Biểu tượng của hộp thoại

- MessageBoxDefaultButton: Nút chọn mặc định button1 hoặc buton2 hoặc button3

* Những trường hợp sử dụng Message Box:

- Trong từng trường hợp, các MessageBox sẽ có cách sử dụng khác nhau:

+ Thông báo cho người sử dụng biết không thể sử dụng chức năng hay lưu ý một vấn đề trong chương trình

+ Cần sự xác nhận của người sử dụng đối với một lệnh quan trọng như:

- Xóa một dữ kiện quan trọng

- Thoát nhưng chưa lưu trữ

- Tắt một lúc nhiều ứng dụng

- Và các trường hợp cần được xác nhận

+ Thông báo những thứ quan trong trong chương trình.

* DialogResult có kết quả trả về từ MessageBox.Show bao gồm các giá trị có thể là:

DialogResult.No b Trình tự thực hiện

Để lập trình sự kiện đóng Form, khi người dùng nhấn nút Thoát, một hộp thoại sẽ xuất hiện hỏi liệu họ có muốn đóng Form hay không Nếu người dùng chọn "Yes", Form sẽ được đóng lại; ngược lại, nếu chọn "No", Form sẽ vẫn mở.

- Viết sự kiện Click cho nút Thoát privatevoid btThoat1_Click(object sender, EventArgs e)

{ if (MessageBox.Show("Bạn có muốn đóng Form không?", "Thông báo", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1) == DialogResult.Yes) this.Close();

Sử dụng phương thức Form.Close

Sự kiện FormClosing: xảy ra khi Form đang đóng

Khi gọi sự kiện này sẽ có tham số:FormClosingEventArgs e

Ta sử dụng nó để xử lý việc tiếp tục đóng form hay không? e Cancelse thì tiếp tục đóng form e.Cancel= true thì ngừng đóng form

Bước 1: Chọn Form\ Chọn Properties\Chọn Event

Bước 2: Nhấn đúp chuột vào FormClosing

Bước 3: Viết code privatevoid Form1_FormClosing(object sender,

{ if (MessageBox.Show("Bạn có muốn đóng Form không?",

MessageBoxDefaultButton.Button1) == DialogResult.Yes) { e.Cancel = false;

Tạo hộp thoại Modal

Hộp thoại trạng thái là một loại hộp thoại mà chỉ trả giá trị cho chương trình khi nó được đóng lại Khi hộp thoại đang hiển thị, người dùng không thể chuyển quyền điều khiển đến các cửa sổ con khác trong cùng ứng dụng Điều này có nghĩa là tất cả các lệnh bên dưới lệnh gọi hộp thoại sẽ không thể thực thi cho đến khi hộp thoại được đóng.

Khi đóng hộp thoại modal, có giá trị trả về, chương trình mới tiếp tục thực hiện các câu lệnh bên dưới dòng lệnh gọi hộp thoại modal.

Tạo hộp thoại Modal bằng cách gọi phương thức ShowDialog của Form

Bước 1 Tạo Form chính: frmMain

Bước 2: Tạo Form phụ: frmSecond

Bước 3 Gọi Form phụ trên form chính frmSecond frm=new frmSecond((); frm.ShowDialog();

Tạo hộp thoại Modaless

Hộp thoại không trạng thái (modaless dialog) cho phép chương trình nhận giá trị ngay lập tức, giúp chuyển quyền điều khiển đến các cửa sổ khác trong cùng ứng dụng hoặc thực hiện các lệnh sau khi gọi hộp thoại.

Tạo hộp thoại Modaless bằng cách gọi phương thức Show của Form

Bước 1 Tạo Form chính: frmMain

Bước 2: Tạo Form phụ: frmSecond

Bước 3 Gọi Form phụ trên form chính frmSecond frm=new frmSecond((); frm.Show();

Tạo form khi nhấn vào mỗi nút sẽ hiển thị ra hộp thoại tương ứng

Các hộp thoại tập tin

Tập tin và đường dẫn

Khái niệm về các loại tập tin

Các kiểu dữ liệu như số, mảng và cấu trúc được lưu trữ trong bộ nhớ RAM của máy tính, do đó khi chương trình kết thúc, dữ liệu này sẽ bị mất.

Để khắc phục vấn đề lưu trữ dữ liệu, người ta đã phát triển các kiểu tập tin cho phép lưu trữ thông tin trên bộ nhớ ngoài như đĩa Nhờ vào việc này, dữ liệu sẽ được giữ lại sau khi chương trình kết thúc, cho phép người dùng truy cập và sử dụng nhiều lần.

Có 3 loại dữ liệu kiểu tập tin:

Tập tin văn bản (Text File) là loại tập tin dùng để lưu trữ các ký tự dưới dạng mã ASCII trên đĩa Dữ liệu trong tập tin này được tổ chức thành các dòng, mỗi dòng sẽ kết thúc bằng ký tự xuống dòng (new line).

The character '\n' is a combination of two characters: CR (Carriage Return, ASCII code 13) and LF (Line Feed, ASCII code 10) Each file concludes with the EOF (End Of File) character, which has an ASCII code of 26 Additionally, text files can only be accessed in a sequential manner.

Tập tin định kiểu (Typed File) là loại tập tin chứa nhiều phần tử cùng kiểu, chẳng hạn như char, int, long, cấu trúc, và được lưu trữ trên đĩa dưới dạng chuỗi các byte liên tục.

Tập tin không định kiểu (Untyped File) là loại tập tin chứa dữ liệu mà không có cấu trúc rõ ràng, chỉ chú trọng vào các yếu tố vật lý như kích thước và các yếu tố ảnh hưởng đến tập tin.

Khi một tập tin được mở để làm việc, luôn có một vị trí cụ thể trong tập tin nơi việc đọc hoặc ghi thông tin diễn ra Vị trí này được hình dung như một con trỏ, được gọi là con trỏ tập tin.

Sau khi hoàn tất việc đọc hoặc ghi dữ liệu, con trỏ sẽ di chuyển thêm một phần tử về phía cuối tập tin Dấu hiệu kết thúc tập tin, được gọi là EOF (End Of File), sẽ xuất hiện ngay sau phần tử dữ liệu cuối cùng trong tập tin.

Biến tập tin là một kiểu dữ liệu dùng để đại diện cho một tập tin Dữ liệu trong tập tin có thể được truy xuất thông qua các thao tác sử dụng biến tập tin này.

Xử lý hệ thống tập tin và thư mục

Các lớp hệ thống tập tin

The System.IO namespace contains a collection of classes designed for locating and manipulating files, directories, and devices These file system classes are categorized into two types: informational and utility.

 Hầu hết các class loại informational dẫn xuất từ class cơ sở

FileSystemInfo Các class này trưng tất cả thông tin hệ thống liên quân các đối tượng hệ thống tập tin Đó là các class có tên FileInfo và

Class DriveInfo trong hệ thống tập tin cung cấp thông tin về các thiết bị, mặc dù nó là một lớp thông tin và không kế thừa từ FileSystemInfo do không chia sẻ các hành vi chung Ví dụ, trong khi bạn có thể xóa các tập tin và thư mục, bạn không thể xóa các thiết bị.

Utility classes provide static methods (or shared methods in Visual Basic) to perform various operations on file system objects such as files, directories, and file system paths The primary utility classes include File, Directory, and Path.

 FileSystemInfo cung cấp các chức năng cơ bản cho tất cả các lớp xử lý hệ thống tập tin và thư mục

Bảng các thuộc tính chính của FileSystemInfo bao gồm: Attributes, cho phép gán hoặc lấy giá trị thuộc tính của tập tin hay thư mục; CreationTime, dùng để gán hoặc lấy thời gian tạo lập; Exists, kiểm tra sự tồn tại của tập tin hay thư mục; Extension, lấy thông tin phần mở rộng của tập tin; LastAccessTime, gán hoặc lấy thời gian truy cập cuối cùng; LastWriteTime, lấy hoặc gán thời gian ghi cuối cùng; Name, trả về tên của tập tin hay thư mục; FullName, lấy đường dẫn đầy đủ; Delete, xóa tập tin hay thư mục trong hệ thống; và Refresh, cập nhật dữ liệu với thông tin mới nhất từ hệ thống tập tin.

 FileInfo cung cấp các chức năng cơ bản để truy xuất và thao tác với một tập tin trong hệ thống tập tin.

Bảng các thuộc tính chính của FileInfo bao gồm: Directory, trả về thư mục chứa tập tin hiện hành; DirectoryName, cung cấp tên thư mục chứa tập tin; IsReadOnly, cho phép lấy và thiết lập thông tin chỉ đọc cho tập tin; Length, hiển thị kích thước của tập tin; AppendText, tạo đối tượng StreamWriter để ghi thêm văn bản vào tập tin; CopyTo, sao chép tập tin đến thư mục khác; Create, tạo một tập tin mới dựa trên thông tin của tập tin hiện hành; CreateText, tạo đối tượng StreamWriter để ghi văn bản vào tập tin; Encrypt, mã hóa nội dung tập tin; MoveTo, di chuyển tập tin đến thư mục khác; Open, mở tập tin để đọc hoặc ghi; OpenRead, mở tập tin ở chế độ chỉ đọc; OpenText, mở tập tin và trả về StreamReader để đọc nội dung; OpenWrite, mở tập tin ở chế độ chỉ ghi; và Replace, thay thế nội dung của tập tin bằng thông tin trong FileInfo.

 DirectoryInfo cung cấp các chức năng cơ bản để truy xuất và thao tác với một thư mục trong hệ thống tập tin.

DirectoryInfo cung cấp nhiều thuộc tính quan trọng để quản lý thư mục, bao gồm Parent, cho phép truy xuất thư mục cha của thư mục hiện hành; Root, trả về thư mục gốc trong chuỗi đường dẫn; và Create, dùng để tạo thư mục mới theo thông tin đã định nghĩa Ngoài ra, thuộc tính CreateSubdirectory cho phép tạo thư mục con, trong khi GetDirectories trả về mảng các thư mục con dưới dạng đối tượng DirectoryInfo Để lấy danh sách các tập tin trong thư mục hiện hành, bạn có thể sử dụng GetFiles, và GetFileSystemInfos sẽ cung cấp thông tin về cả tập tin lẫn thư mục Cuối cùng, MoveTo cho phép di chuyển thư mục hiện hành đến vị trí khác.

Ví dụ: Duyệt qua các tập tin có trong thư mục Windows:

Console.WriteLine("Directory: {0}", ourDir.FullName); foreach(FileInfo file in ourDir.GetFiles())

Console.WriteLine("File: {0}", file.Name);

 DirectoryInfo cung cấp các chức năng cơ bản để truy xuất và thao tác với một ổ đĩa trong hệ thống tập tin.

 Bảng các thuộc tính chính của DriveInfo o AvailableFreeSpace Trả về kích thước còn trống cho phép lưu trữ o DriveFormat Trả về thông tin định dạng của ổ đĩa ( , NTFS,

Tạo hộp thoại lưu tập tin

Lớp SaveFileDialog là lớp dùng cho phép người dùng chọn một nơi để lưu dữ liệu. Để khai lớp SaveFileDialog có 2 cách:

SaveFileDialog SaveFileDialog_name = new SaveFileDialog();

Sau đây là một số thuộc tính cơ bản của lớp SaveFileDialog:

 Title: Tiêu đề của hộp thoại lưu tập tin

Ví dụ: file.Title= “Save as”

 InitialDirectory: Thư mục khởi tạo hiển thị bởi hộp thoạilưutập tin.

OpenFileDialog_name.InitialDirectory=@ “Đường_dẫn”

+ Trả lại đường dẫn đến tập tin được chọn trong hộp thoại lưu tập tin.

+ Gán giá trị cho TextBox: File name trong hộp thoại mở tập tin

Thiết lập bộ lọc loại tập tin cho phép người dùng chọn định dạng tệp xuất hiện trong cửa sổ hiển thị nội dung của thư mục đang được chọn Tùy chọn này sẽ hiển thị trong hộp "Save as type" trong hộp thoại lưu tệp.

SaveFileDialog_name.Filter= ten_chuoi1(Mô_tả_đuôi_tệp)|*.duoi1;*.duoi2;

…| [ten_chuoi2(Mô_tả_đuôi_tệp)|*.duoi1;*.duoi2;…|

- Ví dụ 1: file.Filter = "Text(*.txt)|*.txt|All files|*.*";

ShowDialog(): Hiển thị hộp thoại lưu tập tin.

TT Nội dung Yêu cầu kỹ thuật

Bước 1 Tạo Form trên Project

Explorer Chuột phải vào tên Project->

Gõ tên Form: frmSaveFile.cs

Tạo form với tên form chính xác

Tạo giao diện chính xác

- Khai báo đối tượng thuộc lớp

- Thiết lập các thuộc tính

Lựa chọn chính xác Chạy được form.

6 3 Tạo hộp thoại mở tập in

Lớp OpenFileDialog cho phép người dùng chọn một hoặc nhiều tên tập tin, giúp ứng dụng xử lý các tập tin mà người dùng đã chọn Có hai cách để khai báo lớp OpenFileDialog.

OpenFileDialog OpenFileDialog_name = new OpenFileDialog();

Sau đây là một số thuộc tính cơ bản của lớp OpenFileDialog:

 Title: Tiêu đề của hộp thoại mở tập tin

Ví dụ: opFile.Title= “Open”

 InitialDirectory: Thư mục khởi tạo hiển thị bởi hộp thoạimở tập tin.

OpenFileDialog_name.InitialDirectory=@ “Đường_dẫn”

 Multiselect: thuộc tính kiểu Boolean có thể nhận 1 trong 2 giá trị:

+ Giá trị là false (mặc định) : cho phép lựa chọn 1 tập tin

+ Giá trị là true cho phép người dùng chọn nhiều tập tin

+ Trả lại đường dẫn đến tập tin được chọn trong hộp thoại mở tập tin.

+ Gán giá trị cho TextBox: File name trong hộp thoại mở tập tin

Nếu thuộc tính Multiselect=true, thuộctính này sẽ trả về một mảng tên tập tin mà người dùng chọntrong hộp thoại mở tập tin

Thiết lập bộ lọc loại tập tin để hiển thị nội dung của thư mục đã chọn Tùy chọn này sẽ xuất hiện trong hộp "Files of type" trong hộp thoại mở tập tin.

OpenFileDialog_name.Filter= ten_chuoi1(Mô_tả_đuôi_tệp)|*.duoi1;*.duoi2;

…| [ten_chuoi2(Mô_tả_đuôi_tệp)|*.duoi1;*.duoi2;…|

- Ví dụ 1: opFile Filter "Image(*.jpg;*.jpeg;*.gif;*.png;*.bmp)|*.jpg;*.jpeg;*.gif;*.png;*.bmp";

Ví dụ 2: opFile Filter = “All File(*.*)|*.*|

Document(*.doc;*.dot;*.html;*.url)|*.doc;*.dot;*.html;*.url";

ShowDialog(): Hiển thị hộp thoại mở tập tin.

Nội dung bước công việc (Trình tự thực hiện bước công việc)

Bước 1: Tạo Form trên Project

Explorer Chuột phải vào tên Project-> Chọn

Gõ tên Form: frmOpenFile.cs

Code cho sự kiện Click của nút Open:

- Khai báo đối tượng thuộc lớp

- Thiết lập các thuộc tính

- Xử lý tập tin đã chọn

Hoàn thiệnForm đúng theo yêu cầu trong thời gian cho phép

- New tạo ra một file mới

- Open sẽ mở hộp thoại Open File cho phép ta chọn file txt và khi mở thì nội dung file sẽ hiển thị trên TextBox (multiline)

- Save cho phép chung ta ghi nội dung file trên Textbox.

Sử dụng các đối tượng

Sử dụng TextBox, Button, Label

- Chức năng: Hiển thị dữ liệu

Một số thuộc tính cơ bản

Tên thuộc tính Chức năng

Tên của label (như kiểu tên biến vậy) Nó rất quan trọng

BackColor Màu nền của label

Các thuộc tính trong này cho phép thay đổi kiểu chữ, cỡ chữ…trong label ForeColor Màu chữ trong label

- Chức năng: textbox chủ yếu là để nhập dữ liệu đầu vào, ngoài ra còn có thể dùng để xuất dữ liệu.

Một số thuộc tính cơ bản

Tên thuộc tính Chức năng

(name) Tên của textbox (như kiểu tên biến vậy) Nó rất quan trọng BackColor Màu nên của texbox

Cursor Con trỏ chuột khi rể chuột qua texbox

Cho phép copy chữ và sửa trong texbox hay không (true/false)

Các thuộc tính trong này cho phép thay đổi kiểu chữ, cỡ chữ…trong textbox

ForeColor Màu chữ trong textbox

Multiline Cho phép nhiều dòng

PaswordChar Khi nhập vào sẽ được mã hóa thánh dấu *

ReadOnly Gần giống Enabled Nhưng vẫn có thể bôi đen copy được ScrollBars

Khi chữ vượt quá kích thước textbox thì sẽ xuất hiện thanh cuộn Nên bật Multiline

Text Nội dung (giá ttrị) trong textbox Kiểu dũ liệu: string

False: Ẩn trên form WordWrap Ngắt dòng khi chạm lề

Một số sự kiện thường dùng

- TextChanged: sự kiện xẩy ra khi chữ trong textbox thay đổi

- KeyUp: sự kiện khi đang gõ chữ trong textbox (bắt đầu ấn nút) Ứng dụng rất lớn

Button được dùng chủ yếu để bắt đầu thực hiện một thuật giải (từ Input -> Output) bằng sự kiện click.

Một số thuộc tính cơ bản

Tên thuộc tính Chức năng

(name) Tên của button (như kiểu tên biến vậy) Nó rất quan trọng BackColor Màu nền của button

Cursor Con trỏ chuột khi rê chuột qua buton

Cho phép click vào nút (true) hoặc không cho click vào nút (false)

Các thuộc tính trong này cho phép thay đổi kiểu chữ, cỡ chữ…hiển thị trên button

Text Nội dung (giá ttrị) trong textbox Kiểu dũ liệu: string

Một số sự kiện cơ bản

- Đây là sự kiện (những lệnh sẽ thực hiện) khi click vào button này

To add a click event to a button in Design mode, double-click the button to display the code for its click event The click event code is structured as follows: private void button1_Click(object sender, EventArgs e).

} trong đó button1 là (name) của nút

- Khi click vào button này thì chương trình sẽ thực hiện toàn bộ code trong 2 dấu { }

- Sự kiện (những lệnh sẽ thực hiện) khi rê chuột lên trên button này

- Sự kiện khi đã rê chuột lên trên nó rồi di chuột ra khỏi nó

- Khi click vào nút đăng nhập sẽ hiển thị thông tin đăng nhập ở phần thông tin đăng nhập

- Khi click vào nút thoát sẽ đóng Form.

TT Nội dung Yêu cầu kỹ thuật

Explorer Chuột phải vào tên Project-> Chọn Add ->

Gõ tên Form: frmLabelTextboxButton.cs

Tạo form với tên form chính xác

Tạo giao diện a Kéo và thả các đối tượng lên Form

- Kéo và thả Label trên

Kéo và thả chính xác các đối tượng lầntạo label1, label2, label3

- Kéo và thả TextBox trên

ToolBox vào form 2 lần tạo textbox1, textbox2

- Kéo và thả Button trên

ToolBox vào form 2 lần tạo button1, button2 b Thiết lập các thuộc tính label1.Text = "Tên người dùng"; label2.Text = "Mật khẩu" label3.Text = "Thông tin đăng nhập:"; textbox1:

Text = "&Thoát" vào đúng vị trí trên forn

Thiết lập chính xác các thuộc tính

Viết code a Code cho sự kiện Click của nút Đăng nhập: privatevoid

Viết code chính xác sender, EventArgs e)

{ lbInfo.Text +"\n Tên người dùng: "

} b Code cho sự kiện Click của nút Thoát: privatevoid btExit_Click(object sender, EventArgs e)

Sử dụng ListBox

* Chức năng: Cho phép xem chọn các dòng dữ liệu

* Một số thuộc tính thường dùng

Tên thuộc tính Chức năng

(name) Tên của ListBox (như kiểu tên biến vậy) Nó rất quan trọng

Mảng các dòng trong ListBox Items[0]= “Cat”

MutiColumn true: Chia ListBox thành nhiều cột false: Không chia ListBox thành nhiều cột

Trả về dòng hiện thời được chọn Nếu chọn nhiều dòng thì trẻ về 1 giá trị tùy ý của các dòng được chọn

SelectedItem Trả về giá trị dòng được chọn

SelectedItems Trả về mảng giá trị các dòng được chọn

Có (true)/Không (false) sắp xếp dữ liệu trong ListBox Ngầm định là false

Xác định số lượng dòng được chọn của ListBox One: Chỉ được chọn 1 dòng

Muli: được chọn nhiều dòng Riêng với thuộc tính Items có một số phương thức thường dùng

- Add(“string”): thêm 1 dòng vào ListBox

Ví dụ: listbox1.Items.Add(“Cat”); listbox1.Items.Add(“Mouset”);

- RemoveAt(row): Xóa dòng ở vị trí row

Ví dụ: listbox1.Items.RemoveAt(row)

- Clear: Xóa tất cả các dòng

Ví dụ: listbox1.Items.Clear();;

* Một số sự kiện thường dùng

SelectedIndexChanged: Xảy ra khi chọn một dòng.

- Nhấn vào nút Add sẽ thêm họ tên sinh viên vào ListBox Danh sách sinh viên

- Nhấn vào nút Remove sẽ xóa đi item đang được chọn trong ListBox

- Nhấn vào nút Clear sẽ xóa toàn bộ các item trong ListBox

- Nhấn vào nút Exit sẽ đóng Form

TT Nội dung Yêu cầu kỹ thuật

Explorer Chuột phải vào tên

Gõ tên Form: frmListBox.cs

Tạo form với tên form chính xác

Tạo giao diện a Kéo và thả các đối tượng lên Form

- Kéo và thả Label trên

ToolBox vào form 2 lần tạo label1, label2

- Kéo và thả Listbox trên

- Kéo và thả TextBox trên

ToolBox vào form tạo textbox1

- Kéo và thả Button trên

ToolBox vào form 4 lần tạo button1, button2, button3, button4 b Thiết lập các thuộc tính label1.Text = "Danh sách sinh viên"; label2.Text = "Họ tên sinh viên" textbox1:

Kéo và thả chính xác các đối tượng vào đúng vị trí trên forn

Thiết lập chính xác các button2

Viết code a Code cho sự kiện Click của nút Add: privatevoid btAdd_Click(object sender, EventArgs e)

{ lbDSSV.Items.Add(txtH oten.Text); txtHoten.Clear();

} b Code cho sự kiện Click của nút Remove: privatevoid btRemove_Click(object sender, EventArgs e)

{ int row lbDSSV.SelectedIndex; if(row!=-1)

Viết code chính xác c Code cho sự kiện Click của nút Clear: privatevoid btClear_Click(object sender, EventArgs e)

} d Code cho sự kiện Click của nút Thoát: privatevoid btExit_Click(object sender, EventArgs e)

Lựa chọn chính xác Bước

Sử dụng ComboBox

- Chức năng: Là sự kết hợp của TextBox và ListBox

- Thuộc tính: Một số thuộc tính thường dùng

Tên thuộc tính Chức năng

Tên của ComboBox (như kiểu tên biến vậy) Nó rất quan trọng

Simple: Gõ giá trị DropDown: Chọn hoặc gõ giá trị DropDownList: Chỉ cho phép chọn giá trị Items

Mảng các dòng trong ComboBox Items[0]= “Cat”

Trả về chỉ số dòng được chọn Nếu không chọn nó có giá trị -1 SelectedItem Trả về giá trị dòng được chọn

Có (true)/Không (false) sắp xếp dữ liệu trong ListBox Ngầm định là false

Riêng với thuộc tính Items có một số sự kiện thường dùng

- Add(“string”): Thêm một dòng vào ComboBox

- RemoveAt(row): Xóa dòng ở vị trí row

- Clear(): Xóa tất cả các dòng

- Sự kiện thường dùng là

SelectedIndexChanged: Xảy ra khi chọn một dòng

- Khi LoadForm thì sẽ tự động thêm các dòng vào ComboBox: cboFont là các font chữ; cbo size và các cơ chữ (8-72)

- Khi chọn font trong combobox thì font chữ của label “Hướng đãn sử dụng ComboBox” sẽ được thay đổi theo

- Khi chọn Size trong combobox thì cỡ chữ của label “Hướng đãn sử dụng ComboBox” sẽ được thay đổi theo

TT Nội dung Yêu cầu kỹ thuật

Explorer Chuột phải vào tên

Gõ tên Form: frmComboBox.cs

Tạo form với tên form chính xác

Tạo giao diện a Kéo và thả các đối tượng lên Form

- Kéo và thả Label trên

ToolBox vào form 3 lần tạo label1, label2, label3

- Kéo và thả ComboBox trên

ToolBox vào form 2 lần tạo combobox1, combobox2 b Thiết lập các thuộc tính label1.Text = "Font"; label2.Text = "Size"; label2.Text = "Hướng dẫn sử dụng ComboBox"; combobox1

Kéo và thả chính xác các đối tượng vào đúng vị trí trên forn

Thiết lập chính xác các thuộc tính

3 a Code cho sự kiện Load

Form: privatevoid frmComboBox_Load(obj ect sender, EventArgs e)

FontFamily[] font FontFamily.Families; for (int i = 0; i < font.Length; i++) cboFont.Items.Add(font

[i].Name); for (int i = 8; i

Ngày đăng: 28/12/2021, 19:30

HÌNH ẢNH LIÊN QUAN

Hình ảnh - Giáo trình Lập trình C2 (Nghề Lập trình máy tính)
nh ảnh (Trang 15)
Hình ảnh - Giáo trình Lập trình C2 (Nghề Lập trình máy tính)
nh ảnh (Trang 21)
Hình ảnh - Giáo trình Lập trình C2 (Nghề Lập trình máy tính)
nh ảnh (Trang 26)
Hình ảnh - Giáo trình Lập trình C2 (Nghề Lập trình máy tính)
nh ảnh (Trang 30)
Hình ảnh - Giáo trình Lập trình C2 (Nghề Lập trình máy tính)
nh ảnh (Trang 52)
Hình ảnh - Giáo trình Lập trình C2 (Nghề Lập trình máy tính)
nh ảnh (Trang 63)
Hình ảnh - Giáo trình Lập trình C2 (Nghề Lập trình máy tính)
nh ảnh (Trang 67)
Hình ảnh - Giáo trình Lập trình C2 (Nghề Lập trình máy tính)
nh ảnh (Trang 71)
Hình ảnh - Giáo trình Lập trình C2 (Nghề Lập trình máy tính)
nh ảnh (Trang 85)
Hình  8: Các phép toán cơ bản - Giáo trình Lập trình C2 (Nghề Lập trình máy tính)
nh 8: Các phép toán cơ bản (Trang 89)
Hình ảnh - Giáo trình Lập trình C2 (Nghề Lập trình máy tính)
nh ảnh (Trang 93)
Hình ảnh - Giáo trình Lập trình C2 (Nghề Lập trình máy tính)
nh ảnh (Trang 101)
Hình ảnh - Giáo trình Lập trình C2 (Nghề Lập trình máy tính)
nh ảnh (Trang 108)
BẢNG ĐIỂM MÔN …… - Giáo trình Lập trình C2 (Nghề Lập trình máy tính)
BẢNG ĐIỂM MÔN …… (Trang 132)

TỪ KHÓA LIÊN QUAN

w