|
ASP.net (199)
ASP 3.0 (111)
PHP (30)
HTML (66)
SQL (89)
CSS (46)
XML (7)
JavaScript (78)
Diverse kode (13)
Programmering (22)
System og drift (15)
Trafikk og inntekt (11)
Guider og tips (22)
Nyttig lesestoff (23)
Web forum (604)
Link galleri (565)
ASP.NET kurs(5)
CSS kurs (2)
JQuery kurs (2)
Øk trafikken (8)
Facebook App. (4)
Microsoft CEO (6)
Server & web
Internett & epost
Systemverktøy
Sikkerhet
Fildeling
Lyd & media
Diverse software
Domenesalg
Metagenerator
Websikre farger
WebMail
Bli medlem!
Siste innlegg
Gjestebok
Tips en venn
Kontakt oss
Forsiden
|
|
Fra ASP til ASP.NET - en innføring i webkontroller og code behind programmering Av: Øyvind A. Isaksen
En av de store forskjellene på vanlig ASP og ASP.NET er at man i mye større grad kan skille ut koden fra filene sine. Dvs at man kan putte all VB kode i en egen fil og HTML i en annen fil. Da trenger man noe som kalles for webcontrols. Dette er "html-tagger" som kjøres på serveren og som kun kan brukes i ASP.NET. Denne artikkelen tar utgangspunkt i bruk av label kontrollen og viser hvordan man koder "code behind".
En av de mest brukte webcontrol'ene er label. Det er en webcontrol som rett og slett skriver ut ren tekst eller html-kode. Du kan jo da spørre hvorfor i all verden man skal bruke disse, men det skjer kanskje oftere enn man skulle tro. Feks hvis man skal ha en tekst ut fra en database kan det være greit å ha et sted å putte denne teksten!
Start Visual Studio og lag en ny "ASP.NET Web Application". Når man gjør det genereres det en del filer. En av disse filene heter "Webform1.aspx"og det er den vi skal bruke. Åpne webform1.aspx og gå inn i HTML-kilden/koden for den filen. Der lager vi en label som vist under.
Dette er ikke en vanlig HTML-tag, men en webcontrol. Forskjellen på det er at webcontrols kompileres på serveren akurat som VB-kode i ASP-filer. For at serveren skal kompilere den må vi legge inn en attributt som heter runat med verdien server. I tillegg trenger alle webcontrols en unik ID slik at den kan kalles opp fra VB-koden. Jeg pleier å navngi alle webcontrols med navn som forteller hvordan type webcontrol det er. I dette eksempelet har jag kalt webcontrolen for lblMainLabel. "lbl<navn>" er altså en label!
Nå som labelen er laget er det på tide å putte noe inn i labelen. Dette skal vi gjøre fra en annen fil som kalles for CodeBehind fil. Som navnet sier så er det altså en fil som inneholder koden bak den filen vi nettopp har laget. Hvis du trykker på F7 vil du få opp denne filen. Den har navnet Webform1.aspx.vb. Altså det samme navnet som den filen vi nettopp har laget men med filendelsen .vb i tillegg. Denne filen synes ikke i Solution Explorer, men den ligger der hvis du går inn i windows utforsker.
Hvis du klikker på Show All Files knappen øverst i Solution explorer vil det komme et pluss foran alle aspx-filer. Klikk på plusstegnet så ser du CodeBehind-filen. Visual studio lager automatisk en CodeBehind fil hver gang du lager en aspx-fil.
Åpne CodeBehindfilen og legg merke til et par ting. I alle CodeBehind-filer er det litt kode som Visual Studio har laget. Koden som er laget er først og fremst en klasse (Public Class Webform1) og en Sub-rutine Page_Load. Selve klassen gjør at du i utgangspunktet kan kalle opp rutiner og funksjoner fra andre filer selv om det er veldig uvanlig. Det viktigste her er rutinen Page_Load. Den kjøres hver gang siden lastes og i den rutinen kan du dermed skrive kode som skal kjøres hver gang siden vises.
I linje nummer 3 står det Protected WithEvents lblMinLabel As Syste.Web.UI.Webcontrols.Label. Dette gjør at du kan programmere mot den labelen vi laget i aspx-filen. Koden forteller CodeBehind-filen hvilke control'er som befinner seg i aspx-filen og hvilken ID de har.
Hvis du nå skriver lblMinLabel i Page_Load-rutinen og skriver et punktum, vil det komme opp en liste med egenskaper og funksjoner som kan brukes av en label. Det er ganske mange og vi skal bruke text som forteller koden hva som skal stå i labelen vår.
Skriv det samme i din codebehind fil som vist over og kompiler prosjektet ditt ved å klikke på Build -> Build Solution i menyen øverst i Visual Studio. (CTRL+Shift+B). Etter det kan du ta opp nettleseren din og skrive URL'en til webform1.aspx og da vil du se at de står "Hei verden!" på siden din. URL'en din blir http://localhost/<Project_Name>/Webform1.aspx
I eksempelet under er det vist hvordan man enkelt kan skrive ut dagens dato.
Mange forskjellige ting man kan gjøre med en label. Gjem den feks!:
|
|