2010-11-11 3 views
0

Travail sur un projet ASP.NET 2.0 hérité. Quelqu'un sait-il qu'un contrôle dynamique gratuit se rendra lui-même en fonction du type auquel il est assigné?Projet ASP.NET 2.0 - contrôle généré dynamiquement en fonction du type?

Par exemple, si je lui transmets une propriété DateTime, il doit être rendu en tant que sélecteur de date et d'heure. Si je lui donne une chaîne ... une simple boîte de texte. Donnez-lui une liste, et il va créer un menu déroulant ou ... listbox

Il doit y avoir quelque chose là-bas ...

Répondre

2

Je ne peux pas l'image il y aurait quelque chose là-bas qui peut tout faire tout .

Vous pouvez certainement envelopper beaucoup de contrôles dans une commande que vous pouvez taper génériquement

public class ControlLoader<T> : System.Web.UI.Control where T : Type 
{ 
    public T Value { get; set; } 

    protected override void Render(System.Web.UI.HtmlTextWriter writer) 
    { 
     if (typeof(T) == typeof(DateTime)) 
     { 
      Controls.Add(/* some datetime picker you found */); 
     } 
     else if (...) 
     { 
      // 
     }    
     base.Render(writer); 
    }   
} 
+0

Exactement, mais je ne peux pas trouver quoi que ce soit ... – imyoac

+0

Je pense que c'est là que je vous dis de construire cette vous-même ... ce ne serait vraiment pas trop dur. Vous pouvez utiliser les contrôles ASP.NET existants et les charger et les restituer dynamiquement en fonction du type de données transmises. – hunter

+0

Je pense qu'il dit de le construire vous-même en utilisant quelque chose comme if (typeof (var) == Date) etc. – dstarh

Questions connexes