[VB.Net] Zoek event nadat form klaar is.

Pagina: 1
Acties:

  • PaulZ
  • Registratie: Augustus 2004
  • Laatst online: 21-05-2024
In een form moet en listview worden gevuld met databasewaarden.
Ik zou dit eigenlijk willen doen op het moment dat het form helemaal opgebouwd en zichtbaar is.
Gezocht op internet wat daarbij het beste event is, maar dat leverde geen bruikbaar resultaat op.

Tot nu toe heb ik gekozen voor het MyBase.Load event, maar ik heb het idee dat dit te vroeg is. Ik heb ook al visible-changed geprobeerd, maar dat is het ook niet.

Iemand die mij kan helpen aan het juiste event?

Vlinders moet je volgen, niet vangen...


  • sig69
  • Registratie: Mei 2002
  • Nu online
Ik weet niet of je winforms of webforms bedoeld, mar in het geval van winforms zou je het activated event van je form kunnen proberen.

Roomba E5 te koop


  • whoami
  • Registratie: December 2000
  • Laatst online: 23:34
sig69 schreef op woensdag 22 december 2004 @ 12:17:
Ik weet niet of je winforms of webforms bedoeld, mar in het geval van winforms zou je het activated event van je form kunnen proberen.
Activated wordt iedere keer uitgevoerd als de form de focus gekregen heeft. Iig: Activated wordt meer dan 1x uitgevoerd.

Ik vraag me eigenlijk af waarom de 'Load' opzich niet goed is ?

https://fgheysels.github.io/


  • Equator
  • Registratie: April 2001
  • Laatst online: 16:26

Equator

Crew Council

🦺#Rodekruis #whisky #barista

^^^ Inderdaad.

Je control's worden bij form initialize al gecreeerd, en tijdens form load kun je deze dus al voorzien van data.
Dat je op een trage machine het form wat later ziet, en dat de gegevens dan al ingevuld zijn vind ik personolijk alleen maar goed. Je gaat geen vertraging inbouwen omdat je graag wilt laten zien dat er data wordt opgehaald lijkt mij.

  • PaulZ
  • Registratie: Augustus 2004
  • Laatst online: 21-05-2024
@Cyberj: die vertraging is ook niet mijn bedoeling, maar even voor de duidelijkheid dit:

Ik heb een XPSpecialTaskbox (TB) met daarin een listview (LV). Als ik de LV vul in het load-event en vervolgens de TB collapse is de listview niet meer zichtbaar (zou een bugje kunnen zijn maar dat weet ik niet).
Als ik dit echter niet tijdens de load doe maar met een buttonklik (acties: LV-vullen, TB-collapse) dan werkt 't wel goed. Bij de buttonklik is het form al helemaal zichtbaar en klaar. Vandaar mijn vraag.

Vlinders moet je volgen, niet vangen...


  • pjvandesande
  • Registratie: Maart 2004
  • Laatst online: 18-05 09:50

pjvandesande

GC.Collect(head);

Vul je hem in een appertje thread, het kan zijn dat je EndUpdate bijvoorbeeld nog niet hebt aan geroepen.

Het load event is hier namelijk wel geschikt voor om de ListView te vullen.

  • F-Tim
  • Registratie: November 2003
  • Laatst online: 25-04 00:43
ik weet niet of VB.Net dit ook heeft daar ik meer in Delphi en C++ programmeer, maar kent VB geen OnShow of OnCreate? als je hierachter de code hangt moet het ook gewoon werken! Zo programmeer ik al een tijdje en dat werkt als een trein

Wanna play?


  • pjvandesande
  • Registratie: Maart 2004
  • Laatst online: 18-05 09:50

pjvandesande

GC.Collect(head);

OnShow is niet echt netjes, behalve als deze ook daadwerkelijk maar 1x word aangeroepen. En OnCreate komt denk ik op hetzelfde neer als het OnLoad event van een Form in .NET.

  • Equator
  • Registratie: April 2001
  • Laatst online: 16:26

Equator

Crew Council

🦺#Rodekruis #whisky #barista

OnShow is dacht ik ongeveer het zelfde als het 'On Paint' event in VB6.
Die werd ook elke keer uitgevoerd, i.p.v. 1 keer zoals het load event.

  • pjvandesande
  • Registratie: Maart 2004
  • Laatst online: 18-05 09:50

pjvandesande

GC.Collect(head);

In OnPaint moet je het natuurlijk helemaal niet uitvoeren! Dit heeft een hele anderen bedoeling.

Dat event word elke keer getriggerd als er een repaint nodig is.

[ Voor 1% gewijzigd door pjvandesande op 22-12-2004 13:33 . Reden: typo ]


  • PaulZ
  • Registratie: Augustus 2004
  • Laatst online: 21-05-2024
Dank voor jullie reacties. Ik ga er mee aan de slag.

Slotje a.u.b.

Vlinders moet je volgen, niet vangen...


  • F-Tim
  • Registratie: November 2003
  • Laatst online: 25-04 00:43
offtopic:
OnShow is wel netjes ;) ik Create het form als ik het "open" en dan "close" ik het weer als ik het sluit. Op die manier hou ik het meeste geheugen vrij, en zitten alleen de forms in het geheugen welke ik daadwerkelijk gebruik ;) Daarom wordt de OnShow telkens opnieuw aangeroepen als ik het form maak

[ Voor 19% gewijzigd door F-Tim op 22-12-2004 13:53 ]

Wanna play?


  • pjvandesande
  • Registratie: Maart 2004
  • Laatst online: 18-05 09:50

pjvandesande

GC.Collect(head);

PaulZ schreef op woensdag 22 december 2004 @ 13:50:
Dank voor jullie reacties. Ik ga er mee aan de slag.

Slotje a.u.b.
Slotjes doen we niet echt aan. Als anderen nog een reactie toe willen voegen of hier na een lange tijd terecht komen via de search met hetzelfde probleem kunnen ze nog reageren.
F-Tim schreef op woensdag 22 december 2004 @ 13:52:
offtopic:
OnShow is wel netjes ;) ik Create het form als ik het "open" en dan "close" ik het weer als ik het sluit. Op die manier hou ik het meeste geheugen vrij, en zitten alleen de forms in het geheugen welke ik daadwerkelijk gebruik ;) Daarom wordt de OnShow telkens opnieuw aangeroepen als ik het form maak
Je gaat toch niet elke keer opnieuw je data ophalen bij een Show van een form. Als je het om een grootte hoeveelheid data gaat moet je elke keer een tijd wachten voordat het form echt geshowed word. Lijkt mij niet echt de bedoeling.

  • F-Tim
  • Registratie: November 2003
  • Laatst online: 25-04 00:43
questa schreef op woensdag 22 december 2004 @ 14:10:
[...]

Je gaat toch niet elke keer opnieuw je data ophalen bij een Show van een form. Als je het om een grootte hoeveelheid data gaat moet je elke keer een tijd wachten voordat het form echt geshowed word. Lijkt mij niet echt de bedoeling.
Jawel hoor, het form wordt nl. toch maar 1x geshowd, en dat is als je op de knop in het menu klikt. Voor de rest word de OnShow nooit gebruikt bij mij. Ook niet als je minimaliseert en dan weer maximaliseert, of van form wisselt. Bovendien haal ik nooit erg grote hoeveelheden op. Het grootste wat ik heb opgehaald was voor een DB applicatie voor stage, en dat waren gegevens uit 6 tabellen. Die tabellen staan inmiddels vol met 1000-en records, en nog werkt het programma als een trein.

Wanna play?


  • pjvandesande
  • Registratie: Maart 2004
  • Laatst online: 18-05 09:50

pjvandesande

GC.Collect(head);

F-Tim schreef op donderdag 23 december 2004 @ 13:47:
[...]


Jawel hoor, het form wordt nl. toch maar 1x geshowd, en dat is als je op de knop in het menu klikt. Voor de rest word de OnShow nooit gebruikt bij mij. Ook niet als je minimaliseert en dan weer maximaliseert, of van form wisselt. Bovendien haal ik nooit erg grote hoeveelheden op. Het grootste wat ik heb opgehaald was voor een DB applicatie voor stage, en dat waren gegevens uit 6 tabellen. Die tabellen staan inmiddels vol met 1000-en records, en nog werkt het programma als een trein.
Dan word de data inderdaad maar 1x opgehaalt. Dan is het geen probleem. Maar ik heb wel is code gezien werd uigevoerd in de focus van een form. Dus switchen van app en weer terug was weer 15 seconden wachten op de data. :Z
Pagina: 1