Creation de dropdownlist dynamique

Signaler
Messages postés
42
Date d'inscription
samedi 21 juillet 2007
Statut
Membre
Dernière intervention
29 janvier 2013
-
Messages postés
561
Date d'inscription
mardi 4 mars 2008
Statut
Membre
Dernière intervention
10 juin 2010
-
bjr
jé creer dynamiquement un  dropdownlist (ddl)
mais a l'execution lorsque je selectionne un element de la liste la ddl disparait ?
est ce que qlq1 peut me dire ou est le pbleme voila le code

classe boutton()
{

DropDownList

drop =
new
DropDownList();drop.DataSource = rdr1;

drop.DataTextField =

"Date_prevue";drop.DataBind();

drop.Style[

"Position"] =
"Absolute";drop.Style[

"Top"] =
"108px";drop.Style[

"left"] =
"194px";drop.Style[
"Width"] "200px";drop.AutoPostBack

true;form1.Controls.Add(drop);

while

(rdr1.Read()){

drop.Items.Add(rdr1[0].ToString());

}

rdr1.Close();

con.Close();

drop.SelectedIndexChanged +=

new
EventHandler(drop_SelectedIndexChanged); 

}

protected

void drop_SelectedIndexChanged(
object sender,
EventArgs e){

DropDownList dr = (
DropDownList)sender;Label2.Text = dr.SelectedValue.ToString();

}

cordialement
bonne chance et good luck

8 réponses

Messages postés
6351
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
93
Salut,

Je déplace sur ASPFr, ils seront probablement plus à même de répondre.

/*
coq
MVP Visual C#
CoqBlog
*/
Messages postés
561
Date d'inscription
mardi 4 mars 2008
Statut
Membre
Dernière intervention
10 juin 2010

vu que c'est un control dynamique, tu dois le recréer à chaque postback, sinon tu le perds.
Messages postés
42
Date d'inscription
samedi 21 juillet 2007
Statut
Membre
Dernière intervention
29 janvier 2013

bjr
je vois pas  comment  ?
parce que mon code de creation de dropdownlist est au niveau du boutton
ou dois -je mettre la condition IsPostback ?
mais peux-tu m'en dire plus ?

merci
good luck
Messages postés
561
Date d'inscription
mardi 4 mars 2008
Statut
Membre
Dernière intervention
10 juin 2010

la solution serait d'enlever l'autopostback sur ta dropdown si tu en as pas besoin
Messages postés
42
Date d'inscription
samedi 21 juillet 2007
Statut
Membre
Dernière intervention
29 janvier 2013

bjr


merci pr ta réponce GillouXman


j'ai enlever  de mon code


drop.AutoPostBack = true;

effectivement le probleme de disparition ddl est reglé mais lorsque je selectionne un item de la ddl  ne s'affiche pas

  
  
      
      

void drop_SelectedIndexChanged(object sender, EventArgs e)



{











DropDownList dr = (DropDownList)sender;




Label2.Text = dr.SelectedValue.ToString();




}


merci d'avance a tte reponce

good luck
Messages postés
561
Date d'inscription
mardi 4 mars 2008
Statut
Membre
Dernière intervention
10 juin 2010

ce que je te propose alors c'est de faire cela en code client

donc en javascript

http://www.codeproject.com/KB/scripting/autoselect.aspx

tu mets une event client sur ta dropdown disant que lorsque tu changes de valeur

tu prends la nouvelle valeur et tu la mets dans ta textbox
Messages postés
42
Date d'inscription
samedi 21 juillet 2007
Statut
Membre
Dernière intervention
29 janvier 2013

bjr
jé pas penser au javascript mais sincerement je ne sais pas comment l'integrer dans le code behind ou code source(je veux dire le code HTML)
et surtout dans mon cas ou le contôle ddl est crée dynamiquement ?????

merci boco and thank you
bonne chance  et good luck
Messages postés
561
Date d'inscription
mardi 4 mars 2008
Statut
Membre
Dernière intervention
10 juin 2010

tu dois en le créant

lui ajouter un event client

dd.attributes.add("onchange","nomfunctionjavascript(this);");

dans ton code html

<script type="javascript">

nomfunctionjavascript(mydropdown)
{

var index = dropdown.selectedIndex
var Selectext = dropdown.options[myindex].value

//ici tu irais rechercer ta textbox
document.getElementbyId("<%mytexbox.ClientID %>").value Selecttext;

}

un truc du style

</script>