Voilà mon problème, j'ai un fichier XML :
Mon objectif est de lié les données de ce fichier Xml à une DropDownList, jusque là ca va, mais ensuite je dois récupérer dans un label grâce à un autopostback le nom et le prix, pour ce faire j'ai écrit ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 <?xml version="1.0" encoding="utf-8" ?> <Products> <Prod id="1" price="100" name="a"/> <Prod id="2" price="150" name="b"> <Prod id="3" price="200" name="c"> <Prod id="4" price="100" name="d"> </Products>
et en code-behind :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 <form id="form1" runat="server"> <div> <asp:DropDownList ID="DropDownList1" runat="server" AutoPostBack="True" DataSourceID="XmlDataSource1" DataTextField="name" DataValueField="price" OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged2"> </asp:DropDownList><asp:XmlDataSource ID="XmlDataSource1" runat="server" DataFile="~/XMLFile.xml"> </asp:XmlDataSource> <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label> <asp:Label ID="Label2" runat="server" Text="Label"></asp:Label></div> </form>
Tout fonctionne mais lorsque je sélectionne le d qui a le même "price" que le a, il me remet sur le a en lieu et place du d ???
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 protected void DropDownList1_SelectedIndexChanged1(object sender, EventArgs e) { Label1.Text = DropDownList1.SelectedItem.Text; //nom Label2.Text = DropDownList1.SelectedValue; //prix }
Pourriez vous m'aider SVP ?
Merci
PS : pour mieux illustrer mon problème je l'ai mis en ligne avec les sources http://demo.neldim.fr
Partager