反射有個典型的應用,就是選單的動態載入,原理就是通過反射呼叫某個窗體(類)。下面演示python基礎教程
一下通過反射呼叫類及方法:
1、新建乙個類,命名為:reflectionhelper,**如下:
#region 建立物件例項
///
/// 建立物件例項
///
/// 物件型別
/// 程式集名稱
/// 命名空間
/// 類名
///
public
static t createinstance
<
t>
(string assemblyname,
string namespace,
string classname)
catch
}#endregion
#region 呼叫方法例項
///
/// 呼叫方法例項
///
/// 物件型別
/// 程式集名稱
/// 命名空間
/// 類名
///
public
static t getinvokemethod
<
t>
(string assemblyname,
string namespace,
string classname,
string methodname,
object
paras)
//載入有參方法
method = type.
getmethod
(methodname, paratypes);}
else
//型別轉換並返回
return
(t)method.
invoke
(obj, paras);}
catch
}#endregion
2、新建乙個winform窗體,命名為main,新增兩個按鈕。
3、新建乙個winform窗體,命名為form2。
4、form2窗體的代c#教程碼如下:
public
string
sayhello()
5、main窗體的**如下:
///
/// 呼叫窗體2
///
///
///
private
void
button1_click
(object sender,
eventargs e)
///
/// 呼叫窗體2的sayhello方法
///
///
///
private
void
button2_click
(object sender,
eventargs e)
C 通過反射呼叫類及方法
反射有個典型的應用,就是選單的動態載入,原理就是通過反射呼叫某個窗體 類 下面演示一下通過反射呼叫類及方法 1 新建乙個類,命名為 reflectionhelper,如下 region 建立物件例項 建立物件例項 物件型別 程式集名稱 命名空間 類名 public static t createin...
C 通過反射呼叫方法
用反射呼叫方法 常用於軟體架構中 假如你定義好了基類和介面,其他人使用基類派生出新的方法,你在不知道有多少類會使用此基類派生,但是你需要呼叫所有的派生類的方法時,就可以這樣,直接遍歷相同命名空間中的由基類派生的所有類,然後例項化所有類,呼叫所有方法 using system using system...
C 通過反射類動態呼叫DLL方法
個人覺得 反射 就是能按照規定 微軟.net 動態訪問特定程式集中物件的工具.網上找的 例子 使用反射方 using system using system.collections.generic using system.linq using system.text using system.re...