Avatar billede tommer Nybegynder
13. juni 2003 - 13:14 Der er 8 kommentarer og
1 løsning

visning af data i datagrid

jeg skal vise nogle poster fra en access med en repeater.
alle poster (i hver row) databasen har et yes/no felte som indikerer om den enkelte post skal vises eller ej.
problem: hvordan laver jeg DataSource'en til repeateren så kun de poster med markeret yes/no felt bliver vist ??
Avatar billede repsak Nybegynder
13. juni 2003 - 13:22 #1
først SELECTER du hele databasen.
Så undersøger du om feltet er equals yes - hvis ja så vælger du at smide de resterende felter ind i gridet. Har desværre ikke noget kontret kode her ved hånden, men håber at det var et hint :-)
Avatar billede odegaard Nybegynder
13. juni 2003 - 13:24 #2
Du kan benytte onItemDataBound eventet, hvor du kan tjekke hver værdi og så slukke for denne.
En lidt smartere metode er at lave et DataView ud fra dit dataset og så databinde dette til din repeater. Her kan du nemlig lave et select der fravælger alle der ikke skal vises.
Avatar billede odegaard Nybegynder
13. juni 2003 - 13:31 #3
Sådan lidt frit fra hovedet (så ingen garanti for småfejl):

Dim custDV As DataView = New DataView
dv.Table = myDS.Tables("MinTabel")
dv.RowFilter = "VisMig = 'Ja'"
MinRepeater.DataSource = dv.Table()
MinRepeater.DataBind()
Avatar billede tommer Nybegynder
13. juni 2003 - 13:34 #4
oki det lyder super, jeg leger lidt med det og vender så tilbage..
go' weekend
Avatar billede tommer Nybegynder
15. juni 2003 - 00:27 #5
>>odegaard, det virker ok, men hver række i min db har et yes/no på flere felter f.eks på navn, addresse, tlfnr osv. og på din måde vises rækken ikke hvis bare en af yes/no felterne er no. jeg vil gerne stadg kunne vise de andre i rækken der er yes. hvad kan jeg så gøre...??..
Avatar billede odegaard Nybegynder
15. juni 2003 - 18:36 #6
Øhm det fatter jeg ikke hvad du mener. Først vil du skjule dem og så vil du alligevel vise dem, eller ? Du kan jo udvide din RowFilter. Fx. "VisMig1='ja' AND ID>45"
Avatar billede tommer Nybegynder
15. juni 2003 - 19:51 #7
sorry hvis jeg udtaler mig så det ikke kan forståes....
hvis nu min række i db har 4 kolonner f.eks navn og adresse og et ja/nej til hver af disse. hvis nu navn er chekket(=ja) og adresse ikke er chekket(=nej), så skal min repeater kun vise navn (som jo er ja)...
som jeg forstår det vil et rowfilter fjerne hele rækken hvis bare et (af de 2) ja/nej felter er: (=nej)
håber du nu forstår hvad jeg mener efter dette lille eksempel. i virkeligheden har jeg dog flere kolonner i hver række end i eksemplet ovenover..
Avatar billede odegaard Nybegynder
15. juni 2003 - 19:55 #8
ja, så må du ind i et onItemDataBound event og styre det. Her får du 100% kontrol. Der findes masser af eksempler på det både her på eksperten og på nettet (metoden er helt analog med de eksempler der fx. benytter DataGrid eller DataList).
Avatar billede tommer Nybegynder
15. juni 2003 - 19:57 #9
oki det er super.
takker for hjælp til dig igen,igen ;-)
zez
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester