Tải bản đầy đủ (.pdf) (7 trang)

Hdth tuan05

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (449.21 KB, 7 trang )

Mục tiêu
 Trao đổi dữ liệu giữa các form.
 Xử lý event giữa các form.
 Anonymous method cơ bản.

Nội dung
Trao đổi dữ liệu giữa các form
Để có thể truyền nhận dữ liệu giữa form này và form kia thì với kiến thức cơ bản có thể thực
hiên thơng qua các phương pháp sau đây.
Trước tiên tạo project winform với 2 form: frmSender và frmReceiver như sau:
frmSender
TextBox: txtMSSV
TextBox: txtHoTen

Button: btnAddSV

Button: btnDSSV

frmReceiver

ListView: lvDsSV




Code các phương thức event cần thiết cho frmSender để lưu giữ danh sách sinh viên
được nhập vào.



PP 1: Sử dụng phương thức khởi tạo có đối số, dữ liệu được truyền thông qua tham số


truyền vào phương thức khởi tạo của form nhận. Vì vậy phải cài đặt phương thức khởi
tạo có đối số là dssv của frmReceiver.


Cài đặt lại ở frmSender



Nhược điểm của phương pháp này là chỉ truyền được dữ liệu 1 lần duy nhất ban đầu.
PP 2: Sử dụng đối tượng tham chiếu (reference object), dữ liệu được lấy trực tiếp từ đối
tượng tham chiếu của frmSender trong frmReceiver vì thế phải tạo public cho thành
phần dữ liệu cần truy suất.
- Thay đổi ở frmReceiver

-

Thay đổi ở frmSender




Nhược điểm của pp này là phải thay đổi khá nhiều thành phần, đặc biệt là truy
suất trực tiếp qua tham chiếu đối tượng.
PP 3: sử dụng events, đây là phương pháp nên được sử dụng trong mục đích truyền dữ
liệu giữa các form với các ưu điểm là:
o Cài đặt uyển chuyển, độc lập giữa các form.
o Việc truyền dữ liệu dễ dàng cập nhật ngay khi thay đổi thông qua event.
o Cách cài đặt như sau: tạo event tương ứng với việc thay đổi dữ liệu trên form
TRUYỀN, còn ở form nào cần tiếp nhận và xử lý thì chỉ cần gắn kết phương thức
xử lý tương ứng.

o Cụ thể ở frmSender sẽ tạo event và phát sinh như sau


Xử lý event giữa các form
Giống như ví dụ trong phương pháp 3 ở trên. Xét thêm ví dụ sau.
 Tạo project với 2 form: frmRaiseEvent và frmReceiveEvent

TextBox: txtInput

Label: lblReceiver
 Trong frmRaiseEvent tạo event TextChanged (của form) và raise trong event
TextChanged của TextBox.


 Trong frmReceiveEvent tạo phương thức xử lý event và gắn kết để tiếp nhận.

Anonymous method cơ bản
Cần hiểu khái niệm method (phương thức) là một khối các lệnh được đặt tên với mục đích có
thể sử dụng lại nhiều lần. Ngồi ra có thể ví method cài đặt với tên cụ thể là cài đặt outline.
Có những trường hợp yêu cầu khối lệnh nhưng chỉ sử dụng duy nhất 1 lần thì khi đó nhu cầu
gắn liền cài đặt method tại vị trí gọi (kiểu cài đặt inline), lúc này tên của method là không cần
thiết và bỏ luôn nên gọi là Anonymous Method (phương thức vơ danh).
Ví dụ dễ thấy nhất là các phương thức xử lý event thường chỉ sử dụng duy nhất 1 lần nên khi
cần ngắn gọn có thể cài đặt kiểu anonymous method như sau.


 Tạo project với frmAnonymousMethod giao diện như sau:

TextBox: txtInput
Label: lblOutput


 Code cho frmAnonymousMethod như sau:

 Như vậy cách cài đặt anonymous method cũng rất giống cách cài đặt trong javascript (sử
dụng từ khóa function).

Bài tập
Thực hiện hồn chỉnh các ví dụ ở trên.



Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×