Repeater imbriqué et recup de data
Bonjour alors voila mon problème.
Pour afficher des données j'ai besoin d'imbriquer deux repeater.
En fait j'ai une table qui liste des produits avec les infos quantité, taille, prix.
Je veux que le premier repeater m'affiche les differentes quantité dispo et ensuite le deuxieme repeater lui aurra pour role de m'afficher pour chaque quantité les tailles et prix differents.
le probleme que j'ai se situe a priori au niveau du ItemDataBound de mon repeater principal car pour chaque quantité differente, les tailles et prix qui sont affichées sont ceux de la derniere quantité bindé par mon repeater...
Merci pour votre aide.
Voici le code de mes repeater coté ascx
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
|
<asp:Repeater ID="Repeater1" runat="server" DataSourceID="SqlDataSourcetoto">
<HeaderTemplate><h2>Liste des produits</h2><ul></HeaderTemplate>
<FooterTemplate></ul></FooterTemplate>
<ItemTemplate>
<li>Quantite : <%#DataBinder.Eval(Container.DataItem, "Quantite")%><br /></li>
<asp:Repeater ID="Repeater2" runat="server" DataSourceID="SqlDataSourcetoto2">
<ItemTemplate>
Taille <%#DataBinder.Eval(Container.DataItem, "Taille")%>
Prix <%#DataBinder.Eval(Container.DataItem, "Prix")%>
</ItemTemplate>
</asp:Repeater>
</ItemTemplate>
</asp:Repeater>
<asp:SqlDataSource ID="SqlDataSourcetoto" runat="server" ConnectionString="<%$ ConnectionStrings:V3ConnectionString %>"
SelectCommand="SELECT DISTINCT [Quantite] FROM [Prix] ORDER BY [Quantite]">
</asp:SqlDataSource>
<asp:SqlDataSource ID="SqlDataSourcetoto2" runat="server" ConnectionString="<%$ ConnectionStrings:V3ConnectionString %>"
SelectCommand="SELECT [Taille], [Prix] FROM [Prix] WHERE ([Quantite] = @Quantite)">
<SelectParameters>
<asp:Parameter DefaultValue="1000" Name="Quantite" Type="Int64" />
</SelectParameters>
</asp:SqlDataSource> |
et voici le code coté vb
Code:
1 2 3 4 5 6 7 8 9 10
|
Protected Sub Repeater1_ItemDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.RepeaterItemEventArgs) Handles Repeater1.ItemDataBound
If e.Item.ItemType = ListItemType.Item Or e.Item.ItemType = ListItemType.AlternatingItem Then
SqlDataSourcetoto2.SelectParameters.Item("Quantite").DefaultValue = e.Item.DataItem("quantite")
End If
End Sub |