Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


usercontrol i asp.net

Postades av 2004-06-23 08:14:13 - Sofia Svensson, i forum asp.net generellt, Tråden har 9 Kommentarer och lästs av 1228 personer

Hej!
Istället för att använda frames till min meny som ska ligga överst på alla mina sidor, tänkte jag skapa en usercontrol med meny-länkarna i istället.
Jag är ny på asp.net och undrar om någon har förlsag på hur man enklast löser detta?

TIckelitack!
/Sofia


Svara

Sv: usercontrol i asp.net

Postades av 2004-06-23 08:47:58 - Patrik Dahlén

Man bygger sin usercontrol, registrerar den högst upp på sidan där den ska ligga och sedan lägger man en kontroll i sidan där den skall ligga. ;)

Skämt åsido, högst upp i sidan lägger man en rad som gör att sidan vet var kontrollen finns.
<code>
<%@ Register TagPrefix="PDC" TagName="HeaderTemplate" Src="~\Templates\HeaderTemplate.ascx" %>
</code>

Sedan lägger man in kontrollen som man gör med vilken kontroll som helst, och använder TagPrefix och TagName som angetts ovan.
<code>
<PDC:HeaderTemplate id="HeaderTemplate" runat="server" />
</code>

Kontrollen bygger man som vilken asp.net sida som helst.

Rekommenderar att du tar en titt på exemplen på asp.net, http://asp.net/Tutorials/quickstart.aspx
Jag har även skrivit om ett par kontroller i min blog, http://www.pdc.se/blog
Det finns mängder av artiklar som beskriver både User Controls och Server Controls på .net sajterna. T.ex. aspalliance.com, www.4guysfromrolla.com, asp.net, m.m.


Svara

Sv: usercontrol i asp.net

Postades av 2004-06-23 09:24:55 - Sofia Svensson

Tack Patrik!
Funkar utmärkt!

/Sofia


Svara

Sv: usercontrol i asp.net

Postades av 2004-06-23 09:40:49 - Sofia Svensson

Hej igen!
En fråga hur ni som vet tycker att man ska lösa följande;
Jag vet att man i .net inte bör se frames som ett alternativ (det är väl många som tyckt så redan innan .net iofs) - därav ovanstående lösning med menyn. Som funkar kalas!

Men om jag vill ha motsvarande en höger-frame, alltså att hela högra delean av sidan ska vara likadan på alla sidor, hur gör man då? Är det fortfarande lösning m.h.a user controls som gäller....? Känns knasigt att "reservera" utrymme på höjden.

En annan sak - min usercontrol motsvarar övre delen av varje sida innehållande en meny, logga samt en bild. Denna bild ska vara olika på olika sidor.
Kan man på något smidigt sätt byta ut bildens url i ascx-filen beroende på vilket menyval man gjort eller är det enklare att lägga ut bilden på varje sida (alltså att ta bort den från user controlen)?

Mycket med det nya! Men Kul!!!


Tack/SOfia


Svara

Sv: usercontrol i asp.net

Postades av 2004-06-23 12:38:45 - Patrik Dahlén

Ja, om du vill ha hela högra delen av sidan likadan på alla sidor så kan du göra den till en user control.

En annan lösning är att använda MasterPages. De "riktiga" MasterPages kommer inte förrän i .net 2.0 men det finns lösningar som fungerar på samma sätt. http://www.wilsondotnet.com/ har en lösning jag själv använder i t.ex. min blog. Har även skrivit några inlägg om detta.
Det finns även en liknande lösning på http://metabuilders.com/Tools/MasterPages.aspx

Vad det handlar om är att du gör en User Control som innehåller en hel sida. Meny, din högerdel och hela layouten för en vanlig grundsida. Där innehållet som ändrar sig från sida till sida skall ligga lägger man en placeholder.
Sedan skapar man en .aspx sida. I den sidan registrerar man mallkontrollen och visar. Sedan lägger man in det innehåll som skall visas i de olika placeholders som finns.
Då har man sin layout på ett enda ställe om något behöver ändras.

Angående din menyfråga. Ja, man kan byta ut bilden.
Det du gör är att du:
1. Lägger in bildens ImageURL i kontrollens code-behind.
2. Lägger till en property i din kontroll, t.ex en sträng som heter MenuImage
3. I kontrolltaggen i aspx-sidan skriver man MenuImage="sidbilden.jpg"
4. I Page_Load i kontrollen skriver man menyBilden.NavigateURL = MenuImage

Denna lösning kan du dock inte använda om du använder MasterPages eftersom kontrollen läggs i mallen. Man kan istället styra detta med att man skickar med ett pageid i url:en hela tiden.

Nu har du kanske lite mer att börja med i alla fall.


Svara

Sv: usercontrol i asp.net

Postades av 2004-06-23 13:13:58 - Sofia Svensson

Absolut!
Tack snälla för skjutsen på vägen!

/Sofia


Svara

Sv: usercontrol i asp.net

Postades av 2004-06-23 14:58:20 - Sofia Svensson

Hej igen!
Jag har nu löst det med hjälp av enbart usercontrols, en högst upp på sidan samt en till höger.
Jag ska hämta värdet för bildens url från en sql-databas.
Steg enligt ditt förslag på lösning;
"2. Lägger till en property i din kontroll, t.ex en sträng som heter MenuImage"
Jag får inte till denna syntax, skulle du kunna tipsa om detta?

"3. I kontrolltaggen i aspx-sidan skriver man MenuImage="sidbilden.jpg""
Gärna ett litet kodtips även här.....

"4. I Page_Load i kontrollen skriver man menyBilden.NavigateURL = MenuImage"
Antar att du menar pageload för den sidan som öppnas efter att ett menyval gjorts? Kommer jag här åt menybilden? Den ligger ju i ascx-filen?

1000000 tack!

/Sofia


Svara

Sv: usercontrol i asp.net

Postades av 2004-06-23 15:08:43 - Patrik Löwendahl

Du kan även i UserControllen lyssna på Page_Load


Svara

Sv: usercontrol i asp.net

Postades av 2004-06-23 15:16:08 - Sofia Svensson

Hej!
Jag har löst det nu, anävnde mig av en variabel istället för property så får jag kolla upp properys-syntaxen senare.

Tack!


Svara

Sv: usercontrol i asp.net

Postades av 2004-06-23 15:31:23 - Patrik Dahlén

Eftersom .NET är ett objekt-orienterat språk och en sida eller kontroll är en klass så kan man använda sig av OOP-standard.
Det innebär att man helst ska använda privata variabler i klassen och sedan låta utomstående klasser komma åt dessa genom ett interface. Ett interface består då av properties och metoder.

I det här fallet skulle kontrollen kunna se ut så här:
<code>
Private _menuImage as String
Protected imgMenuImage as Image

Public Property MenuImage() As String
Get
Return._menuImage
End Get
Set(ByVal Value)
_menuImage = Value
End Set
End Property

Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

imgMenuImage.ImageURL = _menuImage
End Sub
</code>


Svara

Nyligen

  • 09:09 Vill du köpa medicinska tester?
  • 12:47 Vem beviljar assistansen – kommune
  • 14:17 Någon med erfarenhet av hemstädnin
  • 14:14 Bör man använda sig av en båtförme
  • 14:12 Finns det någon intressant hundblo
  • 14:25 Tips på verktyg för att skapa QR-k
  • 14:23 Tips på verktyg för att skapa QR-k
  • 20:52 Fungerer innskuddsbonuser egentlig

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 569 169
27 952
271 704
677
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies