VBiB/ACCB.net - Visual Basic in België | .net Ineta User Group  
(login to hide)
Hoofdmenu

Advertenties

Het Computer Winkeltje HCW


Evenementen

Hypenate


Deze WebLog is van Hypenate.



Naar WebLog Startpagina

Categorieën toewijzen

Gastenboek

Je kunt een bericht achterlaten in het Gastenboek.

RSS feed

RSS FeedKlik op het logo om de RSS feed van deze WebLog te bekijken / gebruiken:

meer WebLogs

Bekijk ook andere WebLogs op deze site, of start er zelf één!

...meer WebLogs

nieuwere artikelen | oudere artikelen

User Controls
geplaatst op 30.05.2008, 21:33:59. Categorie: VB.NET 2005.
Het maken en gebruiken van User Controls.

Een User Control kan je zien als een 'group' van standaard controls. Wanneer je een groep controls meerdere keren nodig hebt, is het aangeraden een User Control te maken.


Start een nieuw project. In de zogenaamde 'Solution Explorer' (standaard aan de rechter kant) rechtsmuisknop op de naam van je project > Add > New Item.

http://hypenate.x-plose.be/vbib/userControls/userControlAdd.jpg

Uit het dialoog dat tevoorschijnt komt kies je: User Control

Je krijgt nu een nieuw venster met daarin je eigenlijke User Control. Momenteel is dit simpelweg...een grijs vak.
Gemakshalve ga ik aan de User Control één knop toevoegen, zodat het principe duidelijk word van een deze handige functie.

http://hypenate.x-plose.be/vbib/userControls/userControlKnopGroot.jpg

Je ziet dat er nog rond de knop veel 'grijs' is. Het is aangeraden dat je het grijs zo veel mogelijk beperkt. Omdat als je de User Control op een form gaat plaatsen, gaat het lastig worden om nog een propere layout te behouden.
Ik heb nu het grijze vlak, de eigenlijke basis van de User Control ongeveer evengroot als mijn knop gemaakt. Als je meer controls hebt, maak je het grijze vlak, natuurlijk even groot zodat alle controls er opgaan.

http://hypenate.x-plose.be/vbib/userControls/userControlKnopKlein.jpg

Dubbel klik nu op de knop zodat je in de code ziet.
Het nadeel aan een User Control is dat je achteraf niet meer kunt aanspreken dan dat je hebt aangegeven. Dit wordt zodra duidelijk.

Code
  1. public class vbibUserControl
  2.     public event btnVbib_Click_UserControl()
  3.     public event btnVbib_MouseEnter_UserControl()
  4.  
  5.     private sub btnVbib_Click(byval sender as System.object, byval e as System.EventArgs) handles btnVbib.Click
  6.         raiseevent btnVbib_Click_UserControl()
  7.     end sub
  8.  
  9.     private sub btnVbib_MouseEnter(byval sender as object, byval e as System.EventArgs) handles btnVbib.MouseEnter
  10.         raiseevent btnVbib_MouseEnter_UserControl()
  11.     end sub
  12. end class


Bovenaan declareer ik twee zogenaamde Events. Namelijk btnVbib_Click_UserControl() en btnVbib_MouseEnter_UserControl().
Het beste is dat hier logische namen aan geeft! Ik had ze ook evengoed "Klik" en "MuisOver" kunnen noemen. Maar als je meer controls gaat krijgen, ga je misschien niet meer weten voor welke control noch welk Event word aangeroepen. Dus ik pak de oorspronkelijke naam en zet er gewoon _UserControl() achter. Zodat ik het mezelf makkelijk maak en deze snel kan terug vinden.

Je mag de 2 vensters (Code en Designer) indien deze nog openstaan van de User Control opslaan en sluiten.
In ons 'gewoon' formulier is er nog niets veranderd, ook in onze ToolBox staan geen nieuwe items. Eer dat we de User Control kunnen toevoegen, zullen we ons project moeten 'Rebuilden'.
Dit doe je door bovaan op: Build > Rebuild Solution te klikken.

http://hypenate.x-plose.be/vbib/userControls/userControlRebuild.jpg

Als je nu gaat kijken in je ToolBox staat er een nieuwe item. Een tandwiel met daarachter de naam van je User Control.
Voeg deze nu toe aan het formulier door te dubbelklikken op het item of door het te slepen naar het formulier.

http://hypenate.x-plose.be/vbib/userControls/userControlInToolbox.jpg

Indien je dubbelklikt op de knop nu, zal je zien dat je deze niet rechtstreeks kunt aanspreken!
Om dit te doen moet in je 'Code-View' linksboven je User Control uit de lijst selecteren en dan rechts boven moet je het event kiezen dat je in je User Control hebt gedeclareerd.
Met name: btnVbib_Click_UserControl() en btnVbib_MouseEnter_UserControl(). (Dit bedoel ik dus dat je maar beperkt ben met het aantal Events, wij hebben er 2 aangemaakt, en meer kan je dus ook niet aanspreken!).
NB: Om eigenschappen van de knop of een andere control te wijzigen, typ je eerste de naam van je User Control en dan '.NaamVanControl'

http://hypenate.x-plose.be/vbib/userControls/userControlEventKiezen.jpg

En voor de rest kan je gewoon programmeren zoals normaal.

http://hypenate.x-plose.be/vbib/userControls/userControlEinde.jpg

Je kan het project hier downloaden: http://hypenate...ols_vbib.rar

Aantal keer bekeken: 2130

nieuwere artikelen | oudere artikelen


Reacties op dit artikel

 

 
Postnuke - ADODB Database - PHP 4/5 - pnPhpBB2 - Hosting bij Openminds
Met dank aan Jürgen voor de jarenlange inzet van visualbasic.be (anno 21-12-2000)
vbib.be gestart op 1/03/06 (extra vanaf 1/09: vbnet.be en vbdotnet.be)
VBiB is gerelateerd met wintips.be

Nieuwsbrief RSS Feed: backend.php