2012-02-26 98 views
0

我有字符串屬性和與此代碼填充它:將字符串轉換爲C#中的控件類型?

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

我用PROP1保持控件的類型(WPF基本控制的和客戶化控制的)。我保留這個屬性,並希望創造價值這類基地屬性。事情是這樣的:

Type ControlType=Type.Gettype(prop1); 

但這Type.GetType()僅變量類型如int,字符串工作等

如何將字符串轉換爲控制類型?

回答

2

您需要將完整的AssemblyQualifiedName轉換爲GetType()

您可以通過調用GetType().AssemblyQualifiedName來獲取此類型的現有實例。

例如

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

myControlTypeName以上結束爲:

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

但如果你想讓它是版本中立我相信它可以縮短到下面,仍然工作:

MyNamespace。 MyControl,MyProject的

相關問題