Ik heb voorlopig op een scherm (om orders aan te maken) wat controls staan die data halen uit een achterliggende DataSet. Eén van die controls is een combobox die wordt gevuld met klanten en de klantnaam toont. De data hiervoor wordt uit de DataTable klanten gehaald, die deel uitmaakt van die onderliggende DataSet.
Nu heb ik echter naast de combobox van klanten een "..." button voorzien waardoor het mogelijk is om een nieuwe klant aan te maken of een klant te wijzigen op een nieuw formpje. Als ik op de "..." button klik, open ik een nieuwe form, maak ik een nieuwe DataTable aan die klanten uit de database haalt (zo ben ik zeker dat ik ook nieuwe klanten binnenhaal), ik voer de wijzigingen uit op de DataTable en bij het sluiten van het form keer ik dan terug naar het form waarop de "..." button stond.
Nu wil ik natuurlijk dat de gegevens die in het klant form zijn toegevoegd, gewijzigd en verwijderd, ook zo in de combobox voorkomen.
Ik dacht dus om alle klanten opnieuw uit de db op te halen (of een datatable vanuit het klantform terug te geven), maar hoe vul ik de datatable klanten opnieuw???
Vb: Ik dacht de datatable klanten te legen via clear() en dan alle rijen opnieuw toe te voegen, maar dit gaat niet wegens actieve constraints. Met enforceconstraints false en dan weer true treden er ook problemen op. Voorlopig zoek ik een bestaande rij, update ik die. Komt een rij niet voor, voeg ik een nieuwe rij toe, maar oude rijen in de datatable klanten blijven zo steeds behouden
Ik maak het vermoedelijk te ingewikkeld (ik kon ook kiezen om gewoon een referentie naar de datatable mee te geven als ik het klant form opende, maar zo weet ik niet of er ondertussen nieuwe klanten zijn toegevoegd aan de database). Bestaat er geen simpele manier om alle elementen van een datatable te vervangen door een reeks andere elementen uit een andere datatable?
Nu heb ik echter naast de combobox van klanten een "..." button voorzien waardoor het mogelijk is om een nieuwe klant aan te maken of een klant te wijzigen op een nieuw formpje. Als ik op de "..." button klik, open ik een nieuwe form, maak ik een nieuwe DataTable aan die klanten uit de database haalt (zo ben ik zeker dat ik ook nieuwe klanten binnenhaal), ik voer de wijzigingen uit op de DataTable en bij het sluiten van het form keer ik dan terug naar het form waarop de "..." button stond.
Nu wil ik natuurlijk dat de gegevens die in het klant form zijn toegevoegd, gewijzigd en verwijderd, ook zo in de combobox voorkomen.
Ik dacht dus om alle klanten opnieuw uit de db op te halen (of een datatable vanuit het klantform terug te geven), maar hoe vul ik de datatable klanten opnieuw???
Vb: Ik dacht de datatable klanten te legen via clear() en dan alle rijen opnieuw toe te voegen, maar dit gaat niet wegens actieve constraints. Met enforceconstraints false en dan weer true treden er ook problemen op. Voorlopig zoek ik een bestaande rij, update ik die. Komt een rij niet voor, voeg ik een nieuwe rij toe, maar oude rijen in de datatable klanten blijven zo steeds behouden
Ik maak het vermoedelijk te ingewikkeld (ik kon ook kiezen om gewoon een referentie naar de datatable mee te geven als ik het klant form opende, maar zo weet ik niet of er ondertussen nieuwe klanten zijn toegevoegd aan de database). Bestaat er geen simpele manier om alle elementen van een datatable te vervangen door een reeks andere elementen uit een andere datatable?