ik had al een ander topic gepost maar omdat dit een andere kant opgaat open ik nu een nieuwe.
Wat ik wil bereiken:
Een pagina waar de artikelen worden weergegeven die in het winkelwagentje zitten. Een e-shop dus. Per artikel wordt het volgende weergegeven: titel, aantal, prijs per stuk, totaal prijs en icon voor te verwijderen. Als het aantal van een artikel veranderd wordt, wil ik via TextCanged een functie aanroepen die dan het aantal bijwerkt. Als op het verwijder icon wordt geklikt wil ik dat het hele item wordt verwijderd uit de cart (=winkelwagentje)
Hoe werkt het winkelwagentje?
Ik heb een Class gemaakt die er alsvolgt uit ziet:
Hoe worden de artikelen opgevraagd?
De titel en de prijs worden dus nav het artikelID opgevragen. De gegevens van het artikel worden in een class teruggegeven via een functie. Deze class is qua structuur vergelijkbaar met de class propCart alleen staan er dan andere gegevens in.
Wat lukt mij niet?
Om de juiste gegevens op de juiste plek te krijgen. De repeater doet het wel, maar de datasource van de repeater is de arrayList met de propCart Classes erin. Hierin staan dus alleen het ArtikelID en het Aantal in. Ik zou niet weten hoe ik deze gegevens op de juiste plek krijg en al helemaal niet hoe ik bijvoorbeeld de titel op de juiste plek krijg. De titel wordt immers opgevragen nav het ArtikelID uit de class propCart.
Tevens zou ik niet weten hoe ik een textbox in een repeater een functie moet laten aanroepen en hoe ik dan aan het ArtikelID kom.
Wat heb ik al geprobeerd?
Ik weet dat je via DataBind.Eval( etc..) de data kan binden op een plek. Maar omdat de repeater loopt doormiddel van de ArrayList met daarin als waardes de propCarts weet ik niet hoe ik daaruit de gegevens kan halen. Je kan in de repeater niet de huidige index van de arrayList opvragen zodat je iets met arrayList.Item( index ) kan doen. Verder zou je per artikel in de repeater een Variabele declareren waarin je de propCart classe kan stoppen. Dus iets van: Dim artRow As propCart = ArrayList.item(index). Dan zou je via artRow.ArtID wel de gegevens kunnen opvragen. Maar dat wil dus niet in een repeater.
En hoe je een functie laat aanroepen? Ik heb het volgende al in een TextBox gezet: onTextChanged="editAantal()". Maar ik krijg dan een foutmelding!
Ik heb ook al het internet afgespeurd maar je komt de repeater alleen maar tegen icm met een dataset en dat is dus niet wat van toepassing is.
Kortom .. wie kan me helpen?
Wat ik wil bereiken:
Een pagina waar de artikelen worden weergegeven die in het winkelwagentje zitten. Een e-shop dus. Per artikel wordt het volgende weergegeven: titel, aantal, prijs per stuk, totaal prijs en icon voor te verwijderen. Als het aantal van een artikel veranderd wordt, wil ik via TextCanged een functie aanroepen die dan het aantal bijwerkt. Als op het verwijder icon wordt geklikt wil ik dat het hele item wordt verwijderd uit de cart (=winkelwagentje)
Hoe werkt het winkelwagentje?
Ik heb een Class gemaakt die er alsvolgt uit ziet:
Visual Basic .NET:
Het aantal is dus standaard 1. Al deze items worden opgeslagen in een arraylist. Je krijgt dus een arrayList die vol zit met verschillende propCart Classes. De Titel en prijs wordt opgevraagd via het ArtikelID wat in het winkelwagentje staat.1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
| Public Class propCart Private intArtID As Integer Private intAantal As Integer = 1 Public Property Aantal() As Integer Get Return intAantal End Get Set(ByVal Value As Integer) intAantal = Value End Set End Property Public Property ArtID() As Integer Get Return intArtID End Get Set(ByVal Value As Integer) intArtID = Value End Set End Property End Class |
Hoe worden de artikelen opgevraagd?
De titel en de prijs worden dus nav het artikelID opgevragen. De gegevens van het artikel worden in een class teruggegeven via een functie. Deze class is qua structuur vergelijkbaar met de class propCart alleen staan er dan andere gegevens in.
Wat lukt mij niet?
Om de juiste gegevens op de juiste plek te krijgen. De repeater doet het wel, maar de datasource van de repeater is de arrayList met de propCart Classes erin. Hierin staan dus alleen het ArtikelID en het Aantal in. Ik zou niet weten hoe ik deze gegevens op de juiste plek krijg en al helemaal niet hoe ik bijvoorbeeld de titel op de juiste plek krijg. De titel wordt immers opgevragen nav het ArtikelID uit de class propCart.
Tevens zou ik niet weten hoe ik een textbox in een repeater een functie moet laten aanroepen en hoe ik dan aan het ArtikelID kom.
Wat heb ik al geprobeerd?
Ik weet dat je via DataBind.Eval( etc..) de data kan binden op een plek. Maar omdat de repeater loopt doormiddel van de ArrayList met daarin als waardes de propCarts weet ik niet hoe ik daaruit de gegevens kan halen. Je kan in de repeater niet de huidige index van de arrayList opvragen zodat je iets met arrayList.Item( index ) kan doen. Verder zou je per artikel in de repeater een Variabele declareren waarin je de propCart classe kan stoppen. Dus iets van: Dim artRow As propCart = ArrayList.item(index). Dan zou je via artRow.ArtID wel de gegevens kunnen opvragen. Maar dat wil dus niet in een repeater.
En hoe je een functie laat aanroepen? Ik heb het volgende al in een TextBox gezet: onTextChanged="editAantal()". Maar ik krijg dan een foutmelding!
Ik heb ook al het internet afgespeurd maar je komt de repeater alleen maar tegen icm met een dataset en dat is dus niet wat van toepassing is.
Kortom .. wie kan me helpen?