windows - C # Opret kontrol fra en strengværdi

Indlæg af Hanne Mølgaard Plasc

Problem



Hej Kan jeg oprette en kontrol fra strengværdi
Synes godt om


fra
'System.Windows.Forms.TextBox' skabe kontrol

Bedste reference


Du kunne bruge refleksion:


var textBoxType = typeof(Control).Assembly.GetType("System.Windows.Forms.TextBox", true);
var textBox = Activator.CreateInstance(textBoxType);

Andre referencer 1


Gør sådan:


var controlType = typeof(Control);
        var type = controlType
            .Assembly
            .GetTypes()
            .Where(t => controlType.IsAssignableFrom(t) && 
                        t.Namespace == "System.Windows.Forms"
                        t.Name == "ControlName"
            ).FirstOrDefault();

var inst = Activator.CreateInstance(type );


Dette svar er på grund af dit tidligere spørgsmål.

Andre referencer 2


var assembly = Assembly.GetExecutingAssembly();
var type = assembly.GetType("System.Windows.Forms.TextBox");
var inst = Activator.CreateInstance(type);


Kan ikke teste det endnu. Men det skal gøre tricket.

Andre referencer 3


 Type t = Type.GetType( yourTypeStingHere);

 ConstructorInfo info = t.GetConstructor( new Type[] { } );
 object instance = info.Invoke(new object[]{} )