En brukerkontroll er akkurat som Visual Basic medfølgende kontroller, for eksempel TextBox eller Button, men du kan få din egen kontroll til å gjøre hva du vil med din egen kode. Tenk på dem som "bunter" av standardkontroller med tilpassede metoder og egenskaper.
Hver gang du har en gruppe kontroller som du sannsynligvis vil bruke mer enn ett sted, bør du vurdere en brukerkontroll. Merk at du også kan opprette kontroller av nettbrukere, men de er ikke det samme som nettet tilpasset funksjon; denne artikkelen dekker bare opprettelsen av brukerkontroller for Windows.
Mer detaljert er en brukerkontroll en VB.NET-klasse. Klassen arver fra rammeverket UserControl klasse. De UserControl klasse gir kontrollen din de grunnleggende funksjonene den trenger, slik at den kan behandles som de innebygde kontrollene. En brukerkontroll har også et visuelt grensesnitt, omtrent som en VB.NET-form som du designer i VB.NET.
Fire funksjonskalkulator kontroll
For å demonstrere en brukerstyring, skal vi lage vår egen firfunksjonskalkulatorkontroll (slik ser det ut) som du kan dra og slippe til et skjema i prosjektet ditt. Hvis du har en økonomisk applikasjon der det vil være nyttig å ha en tilpasset kalkulator tilgjengelig, kan du legge til din egen kode til denne og bruke den akkurat som en verktøykasse-kontroll i prosjektene dine.
Med din egen kalkulatorkontroll kan du legge til nøkler som automatisk legger inn en bedriftsstandard, for eksempel en nødvendig avkastning, eller legge bedriftslogoen til kalkulatoren.
Opprette en brukerkontroll
Det første trinnet i å opprette en brukerkontroll er å programmere en standard Windows-applikasjon som gjør det du trenger. Selv om det er noen ekstra trinn, er det likevel ofte lettere å programmere kontrollen din først som en standard Windows-applikasjon enn som en brukerkontroll, siden det er lettere å feilsøke.
Når applikasjonen fungerer, kan du kopiere koden til en brukerkontrollklasse og bygge brukerkontrollen som en DLL-fil. Disse grunnleggende trinnene er de samme i alle versjoner siden den underliggende teknologien er den samme, men den nøyaktige prosedyren er litt forskjellig mellom VB.NET versjoner.
Bruke forskjellige VB.NET-versjoner
Du vil ha et lite problem hvis du har VB.NET 1.X Standard Edition. Brukerkontroller må opprettes som DLLer som skal brukes i andre prosjekter, og denne versjonen vil ikke opprette DLL-biblioteker "ut av boks. "Det er mye mer trøbbel, men du kan bruke teknikkene som er beskrevet i denne artikkelen for å lære å komme deg rundt dette problem.
Opprett en ny med de mer avanserte versjonene Windows Kontrollbibliotek. Følg denne lenken for å se VB.NET 1.X-dialogen.
Fra VB-hovedmenyen, klikk Prosjekt, deretter Legg til brukerkontroll. Dette gir deg et formmiljø nesten identisk med det du bruker for å bygge standard Windows-applikasjoner.
- Legg til komponenter og kode for din kontroll, og tilpass egenskapene du trenger. Du kan kopiere og lime inn fra den feilsøkte standard Windows-appen din. Faktisk ble koden for CalcPad-kontrollen (mer om dette nedenfor) kopiert uten endringer.
- Bygg din løsning for å få DLL-filen for din kontroll. Husk å endre Konfigurasjon for utgivelse før Build for produksjonsbruk.
- For å flytte kontrollen til Verktøykasse, høyreklikk på Verktøykasse og velg Legg til / fjern varer ...
- Bruker .NET Framework Components fanen, bla til DLL for komponenten din (sannsynligvis i bin mappen til Windows Kontrollbibliotek løsning). Klikk Åpen når DLL-filen er valgt for å flytte kontrollen til Verktøykasse, velg deretter OK. Se dette skjermbildet av CalcPad i VB.NET 1.1 Toolbox.
Hvis du vil sjekke ut arbeidet ditt, kan du lukke Windows Kontrollbibliotek løsning og åpne en standard Windows-applikasjon løsning. Dra og slipp den nye CalcPad-kontrollen og kjør prosjektet. Denne illustrasjonen viser at den oppfører seg akkurat som Windows-kalkulatoren, men det er en kontroll i prosjektet ditt.
Dette er ikke alt du trenger å gjøre for å overføre kontrollen til produksjon for andre mennesker, men det er et annet tema!
Fremgangsmåten for å bygge en brukerkontroll i VB.NET 2005 er nesten identisk med 1.X. Den største forskjellen er at i stedet for å høyreklikke på Verktøykasse og velge Legg til / fjern elementer, legges kontrollen til ved å velge Velg Verktøykasse-elementer fra Verktøy Meny; resten av prosessen er den samme.
Her er den samme komponenten (faktisk konvertert direkte fra VB.NET 1.1 ved hjelp av Visual Studio-konverteringsveiviseren) som kjører i en form i VB.NET 2005.
Igjen kan det være en involvert prosess å flytte denne kontrollen til produksjon. Vanligvis betyr det at du installerer den i GAC, eller Global Assembly Cache.