2010-12-16

C# Reflection 一些雜項記錄(書中介紹之外的)

最近的程式設計中,用到滿多Reflection(反映)的做法。
以下我先簡單記錄這陣子的心得,首先先做一個範例說明:
MyLibrary-> Class library project.
WindowsFormsApplication2->Windows form project.

image 

MyLibrary.dll程式碼如下:(建立一個book class)
image

1.取得對應的
Type
一般我們取得的方式都是使用Assembly.GetTypes() 或是 Assembly.GetType(),
這些方式都是滿常用的,今天要介紹的是比較不同的。
其實在Type類別中有一個static GetType(string),這個也可以取得相對應的Type。
image 
執行結果:
image

2.取得實體物件
在這裡一般書上都會先找出
ConstructorInfo這個建構式後在去取得實體物件,如下說明:
image 
執行結果:
image 

今天要記錄的是滿少看到的用法(對我啦! XD),
Activator.CreateInstance
image
執行結果:
image
 

3.動態加入事件
這裡是使用
EventInfo Class
image

執行結果:
image
image

先簡單記錄到這,以後要補充的再加上!!

沒有留言:

張貼留言