2010-10-29 14 views
0

J'utilise un panneau, puis-je créer un littéral dedans, que je crée:Comment FindControl lorsque nous utilisons littéralement pour créer

string temp =" 
<input type="checkbox" id="forum0"> 
<input type="checkbox" id="forum1"> 
<input type="checkbox" id="forum2"> 
<input type="checkbox" id="forum3"> 
<input type="checkbox" id="forum4"> 
<input type="checkbox" id="forum5"> 
" ... 

puis attribuez-lui cette piqûre à

literal.text=temp; 

maintenant si je veux trouver la case à cocher avec id = forum0 ho je fais que j'utilise findcontrol j'ai utilisé presque tout avec bonté aider avec exemple.

merci

+0

@ user479301 - Trouvez la case à cocher, puis quoi? Qu'est-ce que vous essayez d'accomplir? –

Répondre

2

Si vous ajoutez des éléments de formulaire à votre formulaire en utilisant les contrôles littérales, vous ne pouvez pas obtenir ces contrôles par la méthode FindControl. Parce qu'ils sont ajoutés à votre page en tant qu'éléments html statiques.

Vous avez deux options pour les atteindre à côté serveur:

  1. Vous devez les ajouter que le contrôle du serveur. Ensuite, vous pouvez parfaitement y accéder.
  2. Si vous voulez seulement accéder à leurs valeurs lors du retour de vos messages de page, vous pouvez utiliser la requête:

    chaîne

    yourControlsValue = Demande [ « Your_Controls_Name »];

0

ASP.Net n'instancier des objets de contrôle pour les commandes figurant sur la page ASPX, pas qui sont livrés par le rendu HTML réel, qui est l'endroit où votre case est en cours de création. Vous devriez trouver un paramètre retourné au gestionnaire de page avec le nom 'forum0' et qui devrait être accessible via la construction Request["forum0"].