Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

adding data in combobox items

10 views
Skip to first unread message

petert

unread,
Nov 26, 2009, 9:51:01 AM11/26/09
to
Op een formulier heb ik diverse comboboxen. Deze comboboxen moeten gevuld
worden met dezelfde data komende ven dezelfde database.
Op het moment doe ik dat met een "do while loop" voor iedere combobox en dat
werkt maar gebruikt toch wel wat tijd. Mijn vraag is kan dit niet op een
sneller en slimmerre manier?
De gebruikte software is VB Express 2008, Windows vista/XP.
--
Peter

Cor Ligthert[MVP]

unread,
Nov 26, 2009, 1:12:12 PM11/26/09
to
Petert,

Ik weet niet of je een datatable gebruikt, maar dit is dan de gewone manier.

Combobox1.Datasource = De tabel bijvoorbeeld DS.Tables(0).Defaultview
Combobox1.DisplayMember = "EenKolom"
Combobox1.ValueMember = "EenAndereKolom"

Dit kan natuurlijk ook met een generieke list en ook met een bindingsource
er tussen.

Cor

"petert" <pet...@discussions.microsoft.com> wrote in message
news:631B8077-345B-4753...@microsoft.com...

petert

unread,
Nov 26, 2009, 5:17:01 PM11/26/09
to
Cor,
Bedankt voor het antwoord.
Momenteel gebruik ik nog recordsets. En ik gebruik hiervoor geen bindings
enz. Simpel gezegd doe ik één keer een query voor één kolom van de table set
die met behulp van een loop in de items van de negen comboboxen en do een
close voor de database.
Volgens diverse fora kan je met behulp van een array de items vullen maar ik
krijg de data niet in de array omdat het niet van het type variants is.
Als ik een array van het type string maak en die vul met wat waardes dan
werkt het prima.
Een oplossing zou zijn als ik de recordset data in die array kan zetten.
Enig idee hou ik dat kan doen?

Groet,
Peter

--
Peter


"Cor Ligthert[MVP]" wrote:

> .
>

Cor Ligthert[MVP]

unread,
Nov 27, 2009, 12:31:51 AM11/27/09
to
Ik kan je wel een antwoord geven hoe dat te doen, maar beter is dat je een
datatable of Linq gaat gebruiken.

Het laatste kan echter uitsluitend als het om Microsoft gaat met een SQL
server en niet met een MS Access bestand.

Als je even op Visual Studio 10 wacht wordt het nog eenvoudiger want dan kan
je op eenvoudige wijze een class maken die je in een generieke list zet. Dan
is hetzelfs eenvoudig te doen met een recordset.

Wat gebruik je?

Cor

"petert" <pet...@discussions.microsoft.com> wrote in message

news:6326A9B6-E4E2-4158...@microsoft.com...

petert

unread,
Nov 27, 2009, 4:18:01 PM11/27/09
to
Cor,

op het moment is het een database aangemaakt met behulp van Jet en ADO.
Naar mijn mening is dat Acces (extension MDB). Ik gebruik geen server, de
databases zitten op een Nas die gewoon benaderd wordt als een netwerkdisk.
Dit werkt simpel en zonder problemen. De gebruikers hebben totaal geen kijk
op IT en dan is, naar mijn idee, dit de simpelste oplossing. Voor het
programma maakt het niet uit waar de database staat, want bij de eerste keer
opstarten wordt er een INI filetje gemaakt met alle benodigde info. Het is
eigenlijk gewoon recht toe aan. Op het moment zitten er 5 gebruikers er
gelijk op te werken zonder problemen. Alle invoer fouten worden, voor zover
mogelijk, afgevangen.
Het geheel was een VB6 programma wat ik aan het ombouwen ben.

Hoe dan ook, als er een methode is om de recordset in één keer in een array
te zetten dan is het mogelijk om die array weer in één keer in de items
property van de combobox zetten. Naar mijn mening zal dat de zaak behoorlijk
bespoedigen.

Groet, Peter

--
Peter


"Cor Ligthert[MVP]" wrote:

> .
>

Cor Ligthert[MVP]

unread,
Nov 30, 2009, 12:55:28 AM11/30/09
to
Als je echt niet van de RecordSet af kan (het blijft echter een probleem)
dan kan je misschien iets doen met een generic list er tussen, maar het
betekent wel dat je constant moet scannen op mutaties in de list en deze dan
op de Klassieke wijze in de recordset moet zetten en de recordset dan laten
bijwerken.

Er zijn heel weinig mensen die met een recordset in VB na de versie '98
werken, ik heb dit dus ook nooit gedaan, maar lees er ook nooit iets over,
behalve dan dat mensen adviezen geven, dat ze het hebben geprobeerd en
daarna vanaf zijn gestapt en anderen adviseren het nooit te proberen met een
recordset in Net.

Cor

"petert" <pet...@discussions.microsoft.com> wrote in message

news:208D54E0-D536-4220...@microsoft.com...

0 new messages