C# 使用反射提取控件
如果我有一份申请表,比如C# 使用反射提取控件,c#,.net,winforms,reflection,C#,.net,Winforms,Reflection,如果我有一份申请表,比如Form1,它有DataGridView。因此,程序集名称将是Test.exe。通过使用反射,如果我有程序集的物理位置和表单名称的输入Form1,我是否可以提取datagridview?您需要使用assembly.LoadFrom>将程序集加载到AppDomain中,然后创建Form1的实例,通过使用Activator.CreateInstance和Form1的完整限定名。然后,您可以通过在表单实例上调用GetType()来获取Form1的类型信息,枚举所有字段并获取Da
Form1
,它有DataGridView
。因此,程序集名称将是Test.exe
。通过使用反射,如果我有程序集的物理位置和表单名称的输入Form1
,我是否可以提取datagridview
?您需要使用assembly.LoadFrom>将程序集加载到AppDomain中,然后创建Form1的实例,通过使用Activator.CreateInstance
和Form1的完整限定名。然后,您可以通过在表单实例上调用GetType()
来获取Form1的类型信息,枚举所有字段并获取DataGridView类型的字段。使用Form1的实例和类型信息,您可以获取DataGridView的实例。那么您想从另一个应用程序中提取DataGrid
?您能详细说明我的“提取DataGridView”是什么意思吗?Tigran:是的。我需要从其他应用程序中提取DataGrid。chris:我需要获取DataGrid,来自其他应用程序的控件。您无法访问其他进程中的控件,只有在该进程内运行的代码才能执行此操作。代码注入非常重要,请查看“托管间谍”以了解想法。谷歌第一次成功。