LinkLabel, nieuw in Visual Basic .NET, is een standaardbesturingselement waarmee u webstijlkoppelingen in een formulier kunt insluiten. Zoals veel VB.NET-besturingselementen, doet deze niet iets dat je voorheen niet kon doen ... maar met meer code en meer problemen. VB 6 had bijvoorbeeld de Navigeren (en Navigate2 toen de eerste onvoldoende bleek) methoden die u met een URL-tekenreeks kunt gebruiken om een webpagina op te roepen.
LinkLabel is veel handiger en probleemloos dan oudere technieken. Maar, synchroon met .NET-architectuur, is LinkLabel ontworpen om met andere objecten te worden gebruikt om de hele klus te klaren. U moet nog steeds een afzonderlijke opdracht gebruiken om bijvoorbeeld een e-mail of browser te starten. Voorbeeldcode is hieronder opgenomen.
Het basisidee is om het e-mailadres of de web-URL in de eigenschap Text van een LinkLabel-component te plaatsen. Wanneer op het label wordt geklikt, wordt de LinkClicked gebeurtenis wordt geactiveerd. Er zijn meer dan honderd methoden en objecten beschikbaar voor het LinkLabel-object, inclusief eigenschappen voor alles wat u met een link wilt doen, zoals het wijzigen van de kleur, tekst, positie, hoe het zich gedraagt wanneer u erop klikt ... wat dan ook! U kunt zelfs muisknoppen en -posities controleren en testen of de alt, Verschuiving, of Ctrl toetsen worden ingedrukt wanneer op de link wordt geklikt. Een lijst wordt getoond in de onderstaande afbeelding:
--------
Klik hier om de illustratie weer te geven
Klik op de knop Terug in uw browser om terug te keren
--------
Een object met een echt lange naam wordt ook doorgegeven aan deze gebeurtenis: LinkLabelLinkClickedEventArgs. Gelukkig wordt dit object geïnstantieerd met de mooie korte naam die wordt gebruikt voor alle gebeurtenisargumenten, e. De Koppeling object heeft meer methoden en eigenschappen. De onderstaande afbeelding toont de gebeurteniscode en de Koppeling voorwerp.
--------
Klik hier om de illustratie weer te geven
Klik op de knop Terug in uw browser om terug te keren
--------
Normaal gesproken gebruikt u de Tekst eigendom van de Koppeling bezwaar maken om een URL of e-mailadres te krijgen en deze waarde vervolgens door te geven aan System.Diagnostics.Process.Start.
Een webpagina openen ...
System.Diagnostics.Process.Start ( "http://visualbasic.about.com")
Een e-mail starten met het standaard e-mailprogramma ...
System.Diagnostics.Process.Start ("mailto:" & "[email protected]")
Maar je bent echt alleen beperkt door je verbeelding bij het gebruik van de vijf overbelastingen van de Begin methode. Je zou bijvoorbeeld het Solitaire-spel kunnen starten:
System.Diagnostics.Process.Start ( "sol.exe")
Als u een bestand in het stringveld plaatst, wordt het bestand door het standaardverwerkingsprogramma voor dat bestandstype in Windows gestart en verwerkt. In deze verklaring wordt MyPicture.jpg weergegeven (als deze zich in de hoofdmap van station C bevindt :).
System.Diagnostics.Process.Start ( "C: MyPicture.jpg")
U kunt het LinkLabel bijna als een knop gebruiken door eenvoudig elke gewenste code in de LinkClicked-gebeurtenis te plaatsen in plaats van de Start-methode.
Het onderzoek van zo'n honderd andere mogelijkheden valt buiten het bestek van dit artikel, maar hier zijn een paar voorbeelden om u op weg te helpen.
Een nieuw concept dat in LinkLabel wordt gebruikt, is het idee dat er meerdere links in een LinkLabel kunnen zijn en deze worden allemaal opgeslagen in een LinkCollection type. Het eerste element, Links (0), in de verzameling wordt automatisch gemaakt, hoewel u kunt bepalen wat het gebruikt LinkArea eigendom van LinkLabel. In het onderstaande voorbeeld is de eigenschap Text van LinkLabel1 ingesteld op "FirstLink SecondLink ThirdLink", maar alleen de eerste 9 tekens worden opgegeven als een link. De Links-verzameling heeft een tellen van 1 omdat deze link automatisch werd toegevoegd.
Gebruik de om meer elementen toe te voegen aan de verzameling Links Toevoegen methode. Het voorbeeld laat ook zien hoe ThirdLink kan worden toegevoegd als een actief onderdeel van de link.
--------
Klik hier om de illustratie weer te geven
Klik op de knop Terug in uw browser om terug te keren
--------
Het is eenvoudig om verschillende doelen te koppelen aan de verschillende delen van de linktekst. Stel gewoon de eigenschap LinkData in. Om FirstLink te richten op de About Visual Basic-webpagina en ThirdLink target op de hoofd About.Com-webpagina, voegt u deze code eenvoudig toe aan de initialisatie (voor de duidelijkheid worden de eerste twee statements herhaald uit de bovenstaande illustratie):
LinkLabel1.LinkArea = Nieuwe LinkArea (0, 9)
LinkLabel1.Links.Add (21, 9)
LinkLabel1.Links (0) .LinkData = "http://visualbasic.about.com"
LinkLabel1.Links (1) .LinkData = "http://www.about.com"
Misschien wilt u zoiets doen om koppelingen voor verschillende gebruikers aan te passen. U kunt code gebruiken om de ene groep gebruikers naar een ander doel te laten gaan dan een andere groep.
Microsoft "zag het licht" over hyperlinks met VB.NET en omvatte alles wat u ermee zou willen doen.