Archief - [PROG]VB.NET Sub procedure aanroepen vanuit ander formulier

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

.kw

Legacy Member
Ik heb twee formulieren:
- frmBeheer: datagridview + knop "nieuw" om naar frmBeheerAdd te gaan
- frmBeheerAdd: textboxen om nieuw record toe te voegen

Wanneer je in frmBeheerAdd op "Opslaan" klikt, wordt het nieuwe record toegevoegd en wordt frmBeheerAdd verborgen (Me.hide). Maar daarna moet dat nieuwe record getoond worden in frmBeheer (in de datagridview).

Ik heb een sub procedure in frmBeheer: VernieuwDataGridView. Die sub procedure werkt, als ze aangeroepen wordt in frmBeheer. Maar hoe kan ik de datagridview vernieuwen vanuit frmBeheerAdd?

VenomGameworld

Legacy Member
Je kan met classes werken, maar daar ben ik zelf ook niet zo sterk in dus veel uitleg kan ik er ni over geven.

Of...

ik heb dit wel niet in VB.NET geprobeerd (wel in VB6 dus moet normaal lukken), maar je kan de subprocedure in een Module steken en de sub Public maken. Dan zou je deze normaal wel moeten kunnen aanroepen. Maar mss dat dat niet werkt owv de controls waar het geen toegang tot heeft?
Je kan het iig eens proberen!

[AiR] LeViaTHaN

Legacy Member
Waarom ga je die beheerAdd form hiden? Zie daar het nut niet van in, close() die handel je zit precious memory te verbruiken ;)

Als je closed ga je zien welke DialogResult je krijg (ok of cancel). In de behaarAdd form maak je een property die je vult met de waarde die de gebruiker in de textbox heeft gezet.

In de beheerform nadat je je beheerAdd form hebt opgeroepen via ShowDialog() ga je de property opvragen die je zojuist gemaakt hebt. En nu zit je ook terug in de context van je beheer form dus je kan je vernieuwfunctie aanroepen :)

Als je het op jouw manier wil doen zul je met functiepointers aka delegates moeten werken die je naar je beheerAdd form moet sturen. Deze oplossing vind ik zelf echter niet 'the way to go'.
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan