Question

J'ai une page Web dans ASP.NET 3.5 qui sera de créer WebControls dynamiquement. Les WebControls qu'il créerez seront connus par leur chemin complet (c.-à - System.Web.UI.WebControls.whatever). La raison de cela est parce que je suis permettant à l'utilisateur de décider ce qui contrôle ira sur la page Web. Bien sûr, il y a plus de complexité que cela, mais qui est en un mot.

Il suffit de mettre - comment puis-je créer un WebControl sur une page Web par son chemin complet

Je me rends compte que la réponse finira probablement par réflexion, mais j'ai peu d'expérience en utilisant la réflexion et je ne veux pas me tirer une balle dans le pied en faisant une erreur de débutant.

Était-ce utile?

La solution

essayer d'appeler ainsi: Activator.CreateInstance(Type.GetType("TypeName"));

où TypeName est nom complet , y compris l'assemblage. dans mon cas, il avait l'air de cette façon:

Activator.CreateInstance(Type.GetType("System.Web.UI.WebControls.Label, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"));

pour être sûr de nom complet dans votre cas, essayez de typeof(System.Web.UI.WebControls.Label).FullName de sortie et l'utiliser comme modèle

Autres conseils

object widget = Activator.CreateInstance ( Assembly.GetType ( name ) );

où le nom est la chaîne du type complet

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top