我有一个 Windows 窗体应用程序,它基于字符串创建控件。
Type t = Type.GetType("System.Windows.Forms.TextBox, System.Windows.Forms");
但我得到 t 为空。
我有一个 Windows 窗体应用程序,它基于字符串创建控件。
Type t = Type.GetType("System.Windows.Forms.TextBox, System.Windows.Forms");
但我得到 t 为空。
您可以使用此代码 - 基于Activator.CreateInstance
方法
var textBoxType = typeof(Control).Assembly.GetType("System.Windows.Forms.TextBox", true);
var textBox = Activator.CreateInstance(textBoxType);
链接: http: //msdn.microsoft.com/fr-fr/library/system.activator.createinstance (v=vs.80).aspx
您可以指定程序集的全名(因为这个在GAC中),如下所示(即使在框架 4 中它也会取回好的程序集):
Type.GetType("System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089");