效果图: 下面是被反射的窗口: 具体代码: string text = ""; //加载程序集 Assembly assembly = Assembly.LoadFrom(Directory.GetCurrentDirectory() + "//WindowsApplication3.exe"); //创建实例 object obj=assembly.CreateInstance("WindowsApplication3.Form2"); //获取实例对象类型 Type form = obj.GetType(); //获取类型中的所有字段 FieldInfo[] fis = form.GetFields(BindingFlags.NonPublic | BindingFlags.Public | BindingFlags.Instance); foreach (FieldInfo fi in fis) { if (fi.FieldType == typeof(Button))//判断字段是否为按钮 { text += fi.Name+"/r/n----------------------------------/r/n"; //获取按钮的实例的类型 Type bt = (fi.GetValue(obj)).GetType(); //获取按钮实例的所有属性 PropertyInfo[] pis=bt.GetProperties(BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance); foreach (PropertyInfo pi in pis) { if(pi.Name=="Text")//判断该属性是否为Text { text += pi.GetValue((fi.GetValue(obj)), null) + "/r/n"; } } text += "-----------------------------------------/r/n"; } } textBox1.Text = text;