字符串转换为控制在C#类型?

我有字符串属性和与此代码填充它:

prop1= MyCustomPanle.GetType().ToString();

我用为prop1保持控件的类型(WPF基础控制的和客户化控制的)。我保留这个属性,并希望在价值创造型基地这个属性。 事情是这样的:

Type ControlType=Type.Gettype(prop1);

但是,这Type.GetType()只能用于变量类型如int,字符串等。

如何将字符串转换为控制类型?

--------------解决方案-------------

您需要在充分传递AssemblyQualifiedNameGetType()

您可以调用得到这个GetType().AssemblyQualifiedName你想要的类型的现有实例。

例如

var myControlTypeName = typeof(MyControl).AssemblyQualifiedName;
var myControlType = Type.GetType(myControlTypeName);

myControlTypeName上述最终为:

MyNamespace.MyControl,MyProject的,版本= 1.0.0.0,文化=中立,公钥=空

但是,如果你希望它是中性的版本,我beleive它可以短到下方,仍然工作:

MyNamespace.MyControl,MyProject的

我认为你正在寻找Activator.CreateInstance ,这将仅基于在运行时已知的类型创建一个对象:http://msdn.microsoft.com/en-us/library/system.activator.createinstance.aspx

分类:C# 时间:2015-03-16 人气:35
本文关键词: 反思,WPF
分享到:

相关文章

Copyright (C) 55228885.com, All Rights Reserved.

55228885 版权所有 京ICP备15002868号

processed in 0.739 (s). 11 q(s)