Åkej, här kommer en väldigt basic nybörjarkurs i vs-net.
När du startar vs.net första gången hamnar du på "Start page". Börja med att skapa ett nytt projekt. Naturligtvis kan du skapa en enskild sida också och arbeta med, men det är förmodligen i projekt du kommer att arbeta. Välj förslagsvis ett Visual C# Project och sedan en ASP.NET Web Application.
När du har skapat ett nytt projekt kommer du direkt in i vs-nets utvecklingsmiljö. Jag går igenom de viktigaste verktygsfälten.
Solution Explorer - när du skapat ett projekt är det i detta fönster du hittar alla de filer som hör till projektet. Som jag skrev i mitt inlägg ovan, se till i menyn välja "show all files" så du ser alla filer i detta fönster. Bland de olika filerna hittar du en fil som är döpt till WebForm1.aspx. Detta är ditt fösta aspx-dokument, här skriver du din html- och asp.net-kod men INTE c#.
När du valt att visa alla filer kan du trycka på plustecknet framför WebForm1.aspx och där hittar du filen "WebForm1.aspx.cs" som hör till WebForm1.aspx. Det är i denna fil du skriver alla funktioner i det programmeringsspråk du valt, i mitt exempel alltså c# (därav filändelsen cs). Detta kallas code-behind, du blandar alltså aldrig din kod med html och asp.net.
Dubbelklicka på webform1.aspx så kommer filen att öppnas i designläget. Det finns två lägen för dina aspx-dokument - du kan växla mellan design och HTML längst ned i design- eller HTML-fönstret. HTML-läget visar som du säkert förstår din html/asp.net/javascript-kod etc etc och designläget visar sidan sådan den ser ut (WYSIWYG).
Det finns en tredje vy också, koden i dina cs-dokument. Du får fram den antingen genom att klicka på filen direkt i "solution explorer-fönstret" alternativt klicka på ikonen "view code" längst upp till vänster i samma vekrygsfält. Okej, detta är alltså de tre vyer du kommer att arbeta med, design-läget, html-läget (som ju visar samma sak men på olika sätt) samt din kod från cs-dokumentet.
Gå nu till designläget för WebForm1.aspx och titta i i fönstret "Properties". Här har du alla de properties som du kan sätta på den här sidan. Bakgrundsfärger, marginaler osv. I dina properties finns även något som heter "PageLayout" med värdet "Gridlayout" som default. Här kan du ställa in om du vill ha absolut positionering av bilder, textboxar osv, eller flowlayout, den gamla hederliga varianten där du får placera texter och bilder med tabeller. Det senare är väl att föredra om du vill att de som inte använder explorer5+ ska kunna se dina sidor, eller om du gillar att koda manuellt. Gridlayout funkar klockrent i nya webbläsare, men ibland vill man ändå ha gamla hederliga tabeller, speciellt om du gillar att pilla i html-koden för hand. Det kan bli rätt grötigt annars med alla styles och tjafs som läggs till i varenda tagg annars. Dock använder du såklart gridlayout när du exempelvis gör en windowsapp. Ändra nu till flow-layout, det blir lättare att se då!
Vi gör en jätteenkel funktion. Stanna kvar i design-läget och titta i verktygsfältet "Toolbox". Dra in en Textbox, en Button och en Label, antingen genom att dubbelklicka på dem eller dra in och släppa dem i designfönstret. Växla till HTML-läget. Som du ser så har du nu en <asp:textbox>, en <asp:button> och en <asp:label>. Alla med ett förutbestämt id samt attributet runat="server". Kolla nu i din cs-kod (klicka på ikonen längst upp till vänster i "solution explorer-fönstret".
Under public class WebForm1 : System.Web.UI.Page så har den nu lagt till följande:
protected System.Web.UI.WebControls.TextBox TextBox1;
protected System.Web.UI.WebControls.Label Label1;
protected System.Web.UI.WebControls.Button Button1;
vs.net har alltså automatiskt skapat en instans av de webcontrols som du nyss skapat! Med andra ord, bara att börja koda. :)
Gå tillbaka till designläget och markera din textbox. Som du kanske ser så innehåller nu verktygsfältet "properties inte längre properties för sidan utan för din textbox. Ändra textboxens id till exempelvis "MinTextbox". Sätt Text till "Skriv något här" och backcolor till #ddeeff. Som du märker är det väldigt lätt att ändra properties på en kontroll. Har du flera textboxar kan du naturligtvis markera alla samtidigt och ändra properties på dem samtidigt!
Växla till html-läget. Tittar du i din <asp:textbox så ser du att den har lagt till ett antal properties. Naturligtvis kan du även skriva dem direkt här i html-koden. Placera nu markören direkt efter <asp:textbox [markören HÄR] ...> (alltså INNANFÖR taggen) och tryck ett mellanslag. Som du ser så kommer det nu fram en lista med ALLA properties som du kan sätta på just den här kontrollen, detta är jävligt praktiskt för det finns myyyycket som kan sättas och det är svårt att komma ihåg allt. Låt listan vara kvar framme och tryck på "m" så kommer du direkt att hoppa ned till första propertien som börjar på "m", i det här fallet "MaxLength". Tryck på enter så fylls maxlength i automatiskt och sätt värdet till exempelvis 10. Smidigt va! För hur jobbigt var det inte att sätta en MaxLength på en textarea förut! Nu är det en barnlek... :D
Okej, nu måste det ju hända något när du klickar på knappen. Sätt markören efter <asp:button och tryck på mellanslag... tryck bokstaven "o" så ser du att du direkt kommer att hamna på "OnClick". Men vänta, vi gör på ett ännu snabbare sätt. Gå ut till designläget igen och dubbeklicka på din button. Som du märker så hoppar du nu direkt in i ditt cs-dokument och den har nu skapat en funktion där du kan skriva din kod för vad som ska hända när du trycker på knappen!
private void Button1_Click(object sender, System.EventArgs e) {
}
Okej, när du trycker på knappen så vill jag att det som står i textboxen ska skrivas ut i labeln. Textboxen har vi även ändrat id på (MyTextbox), men labeln har fortfarande sitt default-id (Label1).
SKriv i funktionen:
MyTextbox.
Stanna efter punkten. Som du ser får du även här upp en lista på ALLT du kan göra på din textbox när du trycker "punkt" på tangentbordet efter att du skrivit namnet (Id) på din textbox och det är rätt mycket det! Eftersom jag vill ha texten som står i textboxen väljer jag "Text". Denna text ska jag sedan sätta på min label.
Label1.Text = MyTextbox.Text;
När du trycker på knappen så kommer den att köra funktionen Button1_Click och sätta texten i min label till den text som står i textboxen!
Avslutningsvis så måste du "builda" sidan (kompilera den). Kortkommandot för det är Ctrl+Shift+B. Prova och se om det funkar!
Detta var en kort liten basic-genomgång av vs.net, hoppas det inte bara var gammal skåpmat...
------------------
Jag kan inte komma på någon signatur.
[Redigerat av NETwork den 15 jan 2002]