En brugerkontrol er ligesom Visual Basic leverede kontroller, såsom TextBox eller Button, men du kan få din egen kontrol til at gøre hvad du vil med din egen kode. Tænk på dem som "bundter" af standardkontroller med brugerdefinerede metoder og egenskaber.
Hver gang du har en gruppe af kontroller som du sandsynligvis vil bruge mere end et sted, skal du overveje en brugerkontrol. Bemærk, at du også kan oprette kontrol af webbruger, men at de ikke er det samme som web brugerdefinerede kontroller; denne artikel dækker kun oprettelsen af brugerkontroller til Windows.
Mere detaljeret er en brugerkontrol en VB.NET-klasse. Klassen arver fra rammen UserControl klasse. Det UserControl klasse giver din kontrol de basefunktioner, den har brug for, så den kan behandles som de indbyggede kontroller. En brugerkontrol har også en visuel grænseflade, ligesom en VB.NET-form, som du designer i VB.NET.
Fire funktionskalkulator kontrol
For at demonstrere en brugerkontrol skal vi oprette vores egen fire funktionskalkulator-kontrol (sådan ser det ud), som du kan trække og slippe til højre på en form i dit projekt. Hvis du har en finansiel applikation, hvor det ville være praktisk at have en brugerdefineret lommeregner til rådighed, kan du tilføje din egen kode til denne og bruge den ligesom en værktøjskasse-kontrol i dine projekter.
Med din egen regnemaskinkontrol kan du tilføje nøgler, der automatisk indtaster en virksomhedsstandard, såsom en krævet afkasthastighed, eller tilføje firmalogoet til lommeregneren.
Oprettelse af en brugerkontrol
Det første trin i oprettelse af en brugerkontrol er at programmere et standard Windows-program, der gør, hvad du har brug for. Selvom der er nogle ekstra trin, er det stadig ofte lettere at programmere din kontrol først som et standard Windows-program end som en brugerkontrol, da det er lettere at fejlsøge.
Når din applikation fungerer, kan du kopiere koden til en brugerkontrolklasse og oprette brugerkontrol som en DLL-fil. Disse grundlæggende trin er de samme i alle versioner, da den underliggende teknologi er den samme, men den nøjagtige procedure er lidt anderledes mellem VB.NET versioner.
Brug af forskellige VB.NET-versioner
Du har et lille problem, hvis du har VB.NET 1.X Standard Edition. Brugerkontroller skal oprettes som DLL'er, der skal bruges i andre projekter, og denne version opretter ikke DLL-biblioteker "ud af boks. "Det er meget mere besvær, men du kan bruge de teknikker, der er beskrevet i denne artikel til at lære, hvordan man kommer rundt på dette problem.
Opret en ny med de mere avancerede versioner Windows Kontrolbibliotek. Følg dette link for at se VB.NET 1.X-dialogen.
Klik på VB i hovedmenuen Projekt, derefter Tilføj brugerkontrol. Dette giver dig et formmiljø, der er næsten identisk med det, du bruger til at bygge standard Windows-applikationer.
- Tilføj komponenter og kode til din kontrol, og tilpas de egenskaber, du har brug for. Du kan kopiere og indsætte fra din fejlsøgte standard Windows-app. Faktisk blev koden til CalcPad-kontrollen (mere om dette nedenfor) kopieret uden ændringer.
- Byg din løsning for at få DLL-filen til din kontrol. Husk at ændre Konfiguration til frigivelse før bygningen til produktionsbrug.
- Sådan flyttes kontrollen til Værktøjskasse, højreklik på Værktøjskasse og vælg Tilføj / fjern varer ...
- Bruger .NET-rammekomponenter fanen, gennemse til DLL for din komponent (sandsynligvis i beholder mappen til Windows Kontrolbibliotek løsning). Klik Åben når DLL-filen er valgt for at flytte kontrollen til Værktøjskasse, vælg derefter Okay. Se dette skærmbillede af CalcPad i VB.NET 1.1 Toolbox.
For at tjekke dit arbejde, kan du lukke Windows Kontrolbibliotek løsning og åbne en standard Windows-applikation løsning. Træk og slip din nye CalcPad-kontrol, og kør projektet. Denne illustration viser, at den opfører sig ligesom Windows-lommeregneren, men det er en kontrol i dit projekt.
Dette er ikke alt hvad du skal gøre for at flytte kontrollen til produktion for andre mennesker, men det er et andet emne!
Proceduren for opbygning af en brugerkontrol i VB.NET 2005 er næsten identisk med 1.X. Den største forskel er, at i stedet for at højreklikke på Værktøjskasse og vælge Tilføj / fjern varer, kontrollen tilføjes ved at vælge Vælg Værktøjskasseemner fra Værktøj menu; resten af processen er den samme.
Her er den samme komponent (faktisk konverteret direkte fra VB.NET 1.1 ved hjælp af Visual Studio-konverteringsguiden), der kører i en form i VB.NET 2005.
Igen kan flytte denne kontrol til produktion være en involveret proces. Normalt betyder det at installere det i GAC eller Global Assembly Cache.