Har just nu ett "template" system som bygger på att man inkluderar två usercontrols (header, footer) till filen man är på. Nu är det så att jag har följande filsystem (ungefär) Jag har ett liknande system och gör så här.Dynamik i Usercontrols
Default.aspx
files
-- styles.css
images
-- header.jpg
Template
-- header.ascx
-- footer.ascx
hlp
-- hlp_about.aspx
För att komma åt styles.css i header.ascx använder jag <link href="files/styles.css" ...>, så det funkar om jag är i Default.aspx, men om jag går till hlp/hlp_about.aspx så kommer ju den länkningen inte fungdera. Så jag måste på nått sätt från hlp/hlp_about.aspx ställa in att jag ska ha "../" innan files, hur ska jag göra?
Jag använder C#Sv: Dynamik i Usercontrols
Istället för LINK taggen så har jag
<code>
<asp:Literal ID="litStyle" Runat="server" />
</code>
I min code-behind har jag sedan
<code>
litStyle.Text = "<link rel=""stylesheet"" href=""" & ConfigurationSettings.AppSettings("webroot") & "Styles/Main.css"">"
</code>
Configuration.AppSettings("webroot") ligger i web.config.
Du kan även prova med
<code>
litStyle.Text = "<link rel=""stylesheet"" href=""~/Styles/Main.css"">"
</code>
Vet dock inte hur ~ hanteras i det här läget men i vanliga fall så innebär det en referens till applikationens root.