Comment ajouter un contrôle utilisateur sur l'exécution dans ASP.NET?
Comment puis-je ajouter un contrôle utilisateur sur la page de la charge dynamique ASP.NET?
J'ai un div avec ID="contentData"
et quelques contrôles
- .ascx
- deux.ascx
- trois.ascx
Maintenant, j'ai créé une page default.aspx
, qui peut obtenir des paramètres de chaîne de requête, dans l'une des façons suivantes:
default.aspx?val=one
default.aspx?val=two
default.aspx?val=three
Je prends la valeur de
Request.QueryString["val"]
Maintenant, comment puis-je charger de contrôle spécifiques dans ce domaine?
<div ID="controlData"></div>
OriginalL'auteur Ahmed | 2012-01-30
Vous devez vous connecter pour publier un commentaire.
Dans votre aspx
Dans Page_Load
Tout ce que vous devez faire est de faire votre div serveur lié par l'ajout de runat="server", et dans le codebehind utilisation la Page.LoadControl de sortir et d'aller chercher votre usercontrol, puis l'ajouter à votre div à l'aide de la division des Contrôles.Ajouter
Je seconde la validation de la valeur à partir d'une requête.
Après la lecture de ces réponses et de certains articles, je suis maintenant en mesure de faire quelque chose de mieux, Page_Init() est la fonction dans laquelle je dois appliquer le code, mais j'ai besoin d'écrire du code dans !Page.IsPostBack ? si oui, le pourquoi de cette fonction est l'utilisateur?
OriginalL'auteur Jeff Turner
pour plus de détails, allez à travers ce lien - Un Examen approfondi des Contrôles Utilisateur
http://msdn.microsoft.com/en-us/library/ms972975.aspx
Également lire les utiliser de ~ tidle .net
http://msdn.microsoft.com/en-us/library/system.web.virtualpathutility.aspx
OriginalL'auteur dekdev
Utilisation de la Page LoadControl méthode pour ce faire par programme:
http://msdn.microsoft.com/en-us/library/t9ecy7tf.aspx
Aussi, si votre intention est d'ajouter à la div, assurez-vous que la div d'un serveur de contrôle par l'ajout de runat="server" dans le balisage
runat=server
.OriginalL'auteur Icarus
Je suis un peu moins clair, ce que vous demandez, donc pardonnez-moi si ce n'est pas de répondre à la question.
En supposant que les valeurs possibles sont connus à l'avance et que le nombre est modeste-comme les trois dans votre exemple, la meilleure chose à faire est d'inclure tous les contrôles du formulaire avec les "visible=false", puis dans votre méthode de Chargement, de le rendre visible sur true sur celui que vous voulez.
Si le nombre de possibilités est très large, ou si elle est dynamique, de sorte que vous ne savez même pas ce que sont les possibilités au codage de temps, alors vous pourriez le mettre dans une enveloppe de l'objet, par exemple un div, et d'ajouter les éléments de son "contrôle" de la propriété. Mais je préfère éviter cette situation, si possible, car il serait très difficile à maintenir: les futurs programmeurs ne savent même pas ce que les contrôles pourraient peut-être être sur l'écran.
OriginalL'auteur Jay