C# 从字符串c获取控件类型#

C# 从字符串c获取控件类型#,c#,types,C#,Types,我有这样一个字符串: typeStr = label1.GetType().ToString(); 现在我想通过typeStr反向获取该控件的type 我尝试了一些函数,比如Type.GetType(typeStr),但没有帮助 有没有简单的方法来获取类型?尝试使用 typeStr = label1.GetType().GetFullName(); 然后 试着用你的名字 typeStr = label1.GetType().GetFullName(); 然后 您可以传递类型全名 Type

我有这样一个字符串:

typeStr = label1.GetType().ToString();
现在我想通过
typeStr
反向获取该控件的
type

我尝试了一些函数,比如
Type.GetType(typeStr)
,但没有帮助


有没有简单的方法来获取
类型

尝试使用

typeStr = label1.GetType().GetFullName();
然后


试着用你的名字

typeStr = label1.GetType().GetFullName();
然后


您可以传递
类型
全名

Type type = Type.GetType("System.Windows.Forms.Label");
这将创建类型,要创建对象的实例,您可以使用
Activator.CreateInstance

object obj = Activator.CreateInstance(type);


使用加载在
AppDomain.CurrentDomain.GetAssemblys()中的
类型
一个简单的例子:

static void Main(string[] args)
{
    Type type = Type.GetType("System.Int32");
    object obj = Activator.CreateInstance(type);
    int num = (int) obj;
    num = 10;
    Console.WriteLine(num); // prints : 10
}

您可以传递
类型
全名

Type type = Type.GetType("System.Windows.Forms.Label");
这将创建类型,要创建对象的实例,您可以使用
Activator.CreateInstance

object obj = Activator.CreateInstance(type);


使用加载在
AppDomain.CurrentDomain.GetAssemblys()中的
类型
一个简单的例子:

static void Main(string[] args)
{
    Type type = Type.GetType("System.Int32");
    object obj = Activator.CreateInstance(type);
    int num = (int) obj;
    num = 10;
    Console.WriteLine(num); // prints : 10
}

您的意思是只想从这样的字符串中获取该类型的和实例吗

classname instance = Activator.CreateInstance("<assemblyname>","<classname>") as classname;
classname instance=Activator.CreateInstance(“,”)作为类名;

您的意思是只想从这样的字符串中获取该类型的和实例吗

classname instance = Activator.CreateInstance("<assemblyname>","<classname>") as classname;
classname instance=Activator.CreateInstance(“,”)作为类名;

您在这里到底想要实现什么?为什么需要类型名的字符串表示,为什么需要将其解析回
类型
对象?尝试
获取类型
时出现了什么异常?相关的或可能是双简单的我想用som属性序列化一个类。我的类有一个属性:Type elementType,但Type不能序列化。我必须使用类型字符串而不是类型。可能与您在这里试图实现的目标完全相同?为什么需要类型名的字符串表示,为什么需要将其解析回
类型
对象?尝试
获取类型
时出现了什么异常?相关的或可能是双简单的我想用som属性序列化一个类。我的类有一个属性:Type elementType,但Type不能序列化。我必须使用类型字符串而不是类型。OP要求的不是可能的重复。他问:“有没有办法得到代表它的字符串的
类型?”。而且没有
GetFullName()
方法
GetType()
。我假设您想要使用
FullName
属性。这不是OP所要求的。他问:“有没有办法得到代表它的字符串的
类型?”。而且没有
GetFullName()
方法
GetType()
。我假设你想使用
全名
属性。这个答案是完整的,非常感谢,我的问题解决了!感谢所有这些答案是完整的非常感谢,我的问题解决了!多谢大家