« Home « Kết quả tìm kiếm

Lập trình Windows - Lập Trình C #- Lập Trình C Shap - Chương 4


Tóm tắt Xem thử

- Multicast delegate.
- Delegate la 1 kiêu d liêu loai tham chiêu cho phep l u tr.
- cac tham chiêu đên ham.
- Delegates t ươ ng t nh tham chiêu đôi t ự ư.
- ượ ng, nh ng ư đ ượ c dung đê tham chiêu method thay vi tham chiêu đôi.
- t ượ ng..
- ươ ng t nh con tro ham trong C.
- Khai bao delegate ́ Khai bao delegate.
- Delegate đ ượ c khai bao giông nh khai bao ham nh ng.
- Khai bao delegate xac đinh loai.
- Sau khi khai bao delegate, co thê khai bao biên co kiêu la.
- delegate v a khai bao.
- Kh i đâu biên nh 1 tham chiêu đên bât ky ham nao co ơ.
- Vi du.
- public delegate void Del<T>(T item);.
- Tham chiêu delegate cua 1 method co thê đ.
- Method nay đ ̀ ượ c goi nh sau.
- Trong .Net, delegate đ ượ c xem nh loai tham ư ̣ chiêu (reference type) va tât ca delegate đêu.
- kê th a t ́ ừ ừ System.Delegate type.
- A delegate is a reference type derived from System.Delegate and its instances can be used to call methods with matching.
- cua System.Delegate.
- Multicast delegate la loai con cua.
- System.Delegate..
- Th c thi Multicast Delegate ự.
- Đ ượ c khai bao giông nh khai bao delegate.
- Multicast delegate's invocation Multicast delegate's invocation.
- multicast delegate băng toan t gan.
- Phep goi (invocation) cua multicast delegate t.
- ươ ng t nh ự ư delegate thông th ườ ng.
- Xây d ng hàm Sort ự t ng quát cho m ng ổ ả đ i t ố ượ ng có ki u b t ể ấ.
- N u đ i t ế ố ượ ng là ki u s nh int, long, float thì ko có v n đ ể ố ư ấ ề.
- Tr ườ ng h p đ i t ợ ố ượ ng ph c khác? ứ.
- Cho phép đ i t ố ượ ng t quy đ nh th t ự ị ứ ự c a chúng ủ.
- S d ng delegate đ truy n ph ử ụ ể ề ươ ng th c ứ so sánh này vào hàm Sort.
- public delegate bool CompareObj(object o1,object o2).
- 2 đ i t ố ượ ng c n so sánh ầ Tên c a delegate ủ.
- Delegate s tr t i hàm ẽ ỏ ớ Compare riêng c a l p ủ ớ t ươ ng ng ứ.
- public delegate bool CompareObj(object o1,object o2);.
- new Person(“Quy Mui .
- new Person(“Ha Giang .
- new Person(“Ngoc Thao .
- new Person(“Ha Nam .
- The object that raises (triggers) the event is called the event sender..
- The object that captures the event and responds to it is called the event receiver..
- Trình x lý s ki n (eventHandler) trong .NET Framework ử ự ệ đ ượ c mô t nh sau: ả ư.
- public delegate void EventHandler.
- Tham s 1 ố : ngu n phát sinh s ki n ồ ự ệ.
- Tham s 2 ố : EventArgs tham chiêu đên đôi t.
- ượ ng cac đôi.
- Ph i th c hi n trình x lý s ki n theo đúng m u ả ự ệ ử ự ệ ẫ trên!.
- Đôi t ́ ươ ng delegate gi tham chiêu đên ư.
- method co cung signature nh khai bao cua.
- ươ ng đ ươ ng v i môi event ơ.
- ượ ng delegate t ươ ng t nh goi 1 ự ư ̣ method.
- ượ c khai bao nh 1 ́ ư.
- goi t ng method đ ̣ ừ ượ c tham chiêu b i multicast delegate.
- Step 1: Define a public delegate for the event outside any class boundary.
- public delegate void EventDelegate(object sender, EventArgs e).
- Define a class to generate or raise the event class SomeEventArgs : EventArgs.
- The signature of the event handler must be identical to that of the public delegate created in step 1..
- public void OnMyEvent(object sender, EventArgs e).
- handle the event.
- Instantiate the event generator class created in step 2:.
- Add the event handler written in the current class to the event generator class' event..
- ự ớ ự ệ ầ c m i giây s phát ứ ỗ ẽ sinh 1 s ki n ự ệ.
- Cho phép 2 l p khác đăng ký x lý s ki n này, m i l p có ớ ử ự ệ ỗ ớ cách x lý riêng: ử.
- M t ph ộ ươ ng th c Run: c 1s thì phát sinh s ki n ứ ứ ự ệ OnSecondChange.
- T o 2 l p: AnalogClock và DigitalClock nh n x lý s ki n ạ ớ ậ ử ự ệ OnSecondChange c a l p Clock ủ ớ.
- delegate void.
- delegate void SecondChangeHandler Tên delegate x lý s ki n Tên delegate x lý s ki n SecondChangeHandler ử ử ự ệ ự ệ (object clock (object clock , EventArgs info , EventArgs info.
- Đ i t ố ượ ng phát sinh event Đ i t ố ượ ng phát sinh event.
- public class Clock { public delegate void.
- public void Run.
- Đ nh nghĩa trình x lý s ki n c a Clock ị ử ự ệ ủ.
- Đăng ký x lý v i trình x lý s ki n trên khi có s ki n ử ớ ử ự ệ ự ệ OnSecondChange c a Clock ủ.
- Ch c năng đăng ký v i l p Clock là có x lý khi s ki n ứ ớ ớ ử ự ệ OnSencondChange c a Clock phát sinh ủ.
- Ủ y thác cho l p Clock s g i trình x lý đ nh nghĩa bên trên c a ớ ẽ ọ ử ị ủ DigitalClock.
- Trình x lý c a DigitalClock ử ủ.
- public void Show(object obj, EventArgs args).
- Tên c a trình x lý ủ ử Đ i t ố ượ ng phát sinh s ki n ự ệ.
- Đăng ký x lý s ki n (nhân s kiên) ử ự ệ ̣ ự.
- public void Subscribe(Clock.
- new Clock.SecondChangeHandler(.
- new Clock.SecondChangeHandler(Show Show.
- Đ i t ố ượ ng này s ẽ Đ i t ố ượ ng này s ẽ.
- phát sinh s ki n ự ệ phát sinh s ki n ự ệ.
- public void Subscribe(Clock theClock).
- new Clock.SecondChangeHandler(Show);.
- Đăng ký x lý v i trình x lý s ki n trên khi ử ớ ử ự ệ có s ki n ự ệ OnSecondChange c a Clock ủ.
- Ch c năng đăng ký v i l p Clock là có x lý khi ứ ớ ớ ử s ki n OnSencondChange c a Clock phát sinh ự ệ ủ.
- Ủ y thác cho l p Clock s g i trình x lý đ nh ớ ẽ ọ ử ị.
- Đăng ký x lý s ki n c a đ i Đăng ký x lý s ki n c a đ i ử ử ự ệ ự ệ ủ ủ ố ố.
- Khi phát sinh s ki n, truy n th i gian hi n ự ệ ề ờ ệ hành ⇒ l p subscribing s s d ng tham s ớ ẽ ử ụ ố này.
- T o l p ch a tham s truy n cho trình x lý s ki n ạ ớ ứ ố ề ử ự ệ.
- Do mô t c a trình x lý s ki n là tham s th 2 ph i là l p ả ủ ử ự ệ ố ứ ả ớ d n xu t t EventArgs! ẫ ấ ừ.
- Trong l p Clock khai báo trình x lý s ki n nh sau ớ ử ự ệ ư.
- public delegate void.
- public void Subcribe(Clock theClock).
- public void Show(object obj, TimeEventArgs timeArg).
- Các ph n khác còn l i t ầ ạ ươ ng t nh minh h a 1 ự ư ọ

Xem thử không khả dụng, vui lòng xem tại trang nguồn
hoặc xem Tóm tắt