Hej, det var en bra fråga... frågan var ifall det fanns en bra lösning på hur man kan göra så som jag vill :) Jag tror att Ola menar att frågan är lite luddig =) jag får väl försöka en gång till =) Vet inte om jag förstått dig rätt men som jag ser det så är det en dynamisk navigation du är ute efter.Lösning?
Jag sitter och tänker på hur man skulle kunna lösa ett problem jag har. Jag har en meny som ska ha undermenyer.
Jag bygger det som ett mindre publicerings system och har då alla sidor i en databas. Det kommer typ funka som ett större artikel system.
Ex. på hur länk kan vara. X.aspx?articleID=1234 och då har jag tänkt att man ska bestämma vilken meny kategori det ska tillhöra ...
... ritar ett ex.
[ startsida ]
[ Nyheter ]
- Arkiv
- Tipsa oss
[ Kontakt ]
[ Övrigt ]
... när man är inne på Nyheter, arkiv eller Tipsa oss.
De sidorna kommer ha ett articleID och tillhöra en meny kategori.
Jag känner mig så dum när jag frågar :( Men hoppas ni förstår hur jag menar, annars är det ju bara att fråga.
// Micke ÅSv: Lösning?
Sv: Lösning?
Jag här läst inlägget ett par gånger och jag har svårt att se vad du egentligen vill....
Om jag fattat dig rätt så vill du visa tex att [nyheter] är "uppfälld" om du är på en artikel
Om du kommer till nånting under [kontakt] skall den vara "uppfälld"
Detta skall baseras på vilken fil du kör, tex x.aspx ?
Förklara gärna lite merSv: Lösning?
Man kan väl säga att det kan vara som en webshop.
Datorer
- Compaq
- HP
Operativsystem
- Win 2000
- Win XP
Då ifall man går in på tex. Datorer som har ID = 1, då visas undermenyerna Compaq och HP.
Då då är Den kategorin uppfälld och de andra nerfällda.
Ifall man då går in på HP så är fortfarande lika dant ( Datorer menyn uppfälld, den andra nerfälld)
man kan ju lösa det genom Querystring(),
<code>
If Request.Querystring("articleID") = 1 OR Request.Querystring("articleID") = 2 then
' visa undermenyn för kategori 1.
ElseIf Request.Querystring("articleID") = 3 then
' visa en annan...
End If
</code>
Men det känns och är lättare ifall det är med databas med uppdaterings synpunkt.
Ursäkta ifall det blev lite stavfel och oförståendligt, jag är rätt trött just nu.
// Mikael ÅSv: Lösning?
Här är lite att börja fundera på.
I databasen behövs en tabell, t.ex. MenyKategorier:
<code>
MenyKategorier
-----------------
ID
Kategori
Parent
</code>
där Parent är 0 om det är en huvudkategori.
Skapa en kontroll för navigationen.
Menyn skapas efter de kategorier du har i databasen, Datorer, Operativsystem, och automatiskt nya du lägger till.
När du går in på en kategori så skickas kategoriid med i querystring, annars är alternativet att sätta aktuellt id i Session. Jag skulle köra querystring.
När kategoriid är inskickat så skapar kontrollen först huvudmenyn som tidigare men hämtar även subkategorier för de avdelningar, t.ex. Compaq och HP som finns för den valda huvudkategorin.
Det finns färdiga lösningar för menyer. Kolla på dom, ingen idé att uppfinna hjulet igen. T.ex. http://gotdotnet.com/Community/Workspaces/workspace.aspx?id=a8ee64df-8f2a-483f-8594-10aaa66988ce