• C# 利用反射调用类下的方法


    1. namespace TestReflection  
    2. {  
    3.     public partial class Form1 : Form  
    4.     {  
    5.         public Form1()  
    6.         {  
    7.             InitializeComponent();  
    8.         }  
    9.   
    10.         private void comboBoxEdit1_SelectedIndexChanged(object sender, EventArgs e)  
    11.         {  
    12.             string MethodName = comboBoxEdit1.SelectedItem.ToString();  
    13.             TestMethod(MethodName, MethodName);  
    14.         }  
    15.   
    16.         /// <summary>  
    17.         /// 反射调用类中的方法  
    18.         /// </summary>  
    19.         /// <param name="MethodName"></param>  
    20.         /// <param name="Text"></param>  
    21.         private void TestMethod(string MethodName, string Text)  
    22.         {  
    23.             try  
    24.             {  
    25.                 ////    1.Load(命名空间名称),GetType(命名空间.类名)  
    26.                 Type type = Assembly.Load("TestReflection").GetType("TestReflection.Test");  
    27.   
    28.                 ////    2.GetMethod(需要调用的方法名称)  
    29.                 MethodInfo method = type.GetMethod(MethodName);  
    30.   
    31.                 ////    3.调用的实例化方法(非静态方法)需要创建类型的一个实例  
    32.                 object obj = Activator.CreateInstance(type);  
    33.   
    34.                 ////    4.方法需要传入的参数  
    35.                 object[] parameters = new object[] { this, Text };  
    36.   
    37.                 ////    5.调用方法,如果调用的是一个静态方法,就不需要第3步(创建类型的实例)  
    38.                 ////      相应地调用静态方法时,Invoke的第一个参数为null  
    39.                 method.Invoke(obj, parameters);  
    40.             }  
    41.             catch  
    42.             {  
    43.   
    44.             }  
    45.         }  
    46.   
    47.     }  
    48. }
  • 相关阅读:
    软件工程 案例分析作业--CSDN博客功能
    现代软件工程 -- 第一周 -- 介绍自己
    五月开发总结
    第十周读书笔记
    读书笔记 2018-5-15
    读书笔记 Week7 2018-4-24
    结对编程收获
    读书笔记 Week7 2018-4-19
    结对作业——四则运算 Part2. 封装与对接相关问题
    结对作业——四则运算 Part3. 对于结对编程的总结与思考
  • 原文地址:https://www.cnblogs.com/tsql/p/8744263.html
Copyright © 2020-2023  润新知