Accéder programmatiquezment aux ctl d'un form [Résolu]

Signaler
Messages postés
116
Date d'inscription
samedi 14 août 2004
Statut
Membre
Dernière intervention
25 mars 2010
-
Messages postés
116
Date d'inscription
samedi 14 août 2004
Statut
Membre
Dernière intervention
25 mars 2010
-
Bonjour,
Je viens de passer sous ASPNET 2.0 et je voudrais accéder par programmation aux contrôles du form
Exemple de ce que je voudrais faire
diim str MonCtl as string
for i=1 to 9
   MonCtl="CTL" & trim(cstr(i))
   me.controls(MonCtl).innertext=MonCtl
next

Merci de votre aide

AC1
Databases on the Web & on the LAN

1 réponse

Messages postés
116
Date d'inscription
samedi 14 août 2004
Statut
Membre
Dernière intervention
25 mars 2010

Hello,
Je viens de toruver la réponse.  Une fois qu'on l'a, ç aparaît simple, mais j'y ai passé un jour et demi car c'est assez mal documenté de mon point de vue.

Le point clé est de récupérer le nom (ID) des contrôles pour ensuite le travailler 'normalement'.  Ceci permet notamment de faire des traitemetn différents si le nom des champs est normalisé.  Par ex AAA_ctl1, BBB_ctl2 etc..

Une dernière remarque est de ce souvenir que les contrôles ne sont pas linéaires mais ont eux-mêmes éventuellement des sous contrôles.  LE code ci-dessous renvoie un string avec la liste des contrôles. 

For
Each ctrl
As Control
In Page.ControlsstrTemp = strTemp & ctrl.ID

If ctrl.HasControls
Then

For
Each ctrl2
As Control
In ctrl.ControlsstrTemp = strTemp &

"[" & ctrl2.ID

Next

End
If

Next

AC1
Databases on the Web & on the LAN