Одна гиперссылка в разных местах - PullRequest
1 голос
/ 09 сентября 2010

Я бы хотел разместить гиперссылку во многих местах на моем веб-сайте, однако я просто хочу, чтобы она была определена один раз, а не несколько раз. Каков наилучший способ добиться этого?

Я начал с того, что перечислил его в узле web.config, но мне удалось вывести его только в качестве литерала, и я не смог сделать его гиперссылкой.

Я не знаю много о главных страницах, но то, что я знаю о них, мне кажется, что они не являются ответом на эту задачу, потому что они не позволяют размещать эту гиперссылку на некоторых страницах другие и в других местах на некоторых страницах, чем другие.

Помогите пожалуйста! :)

Я работаю в ASP.net VB.net

Ответы [ 2 ]

0 голосов
/ 22 декабря 2010

Вы можете создать пользовательский элемент управления, который наследуется от HyperLink. Этот метод не потребует использования кода на отдельных страницах, но вам нужно будет создать новый класс и изменить файл web.config. При необходимости измените пространства имен.

SpecialLink.vb

Namespace YourWebSite.Controls
 Public Class SpecialLink
  Inherits HyperLink

  Public Sub New()
   NavigateUrl = "~/SpecialLinkUri.aspx"
   Text = "Special Link Text"
  End Sub
 End Class
End Namespace

web.config (добавьте это в узел system.web) Это позволяет вам использовать этот элемент управления на любой странице / главной странице / пользовательском элементе управления на вашем сайте. <pages> <controls> <add namespace="YourWebSite.Controls" tagPrefix="YourWebSite"/> </controls> </pages> Использование на вашей странице

<p>This is some text, here's the link: <YourWebSite:SpecialLink></YourWebSite:SpecialLink></p>
<p>This is some text, <YourWebSite:SpecialLink>here's the link</YourWebSite:SpecialLink>.</p>
0 голосов
/ 09 сентября 2010

Поместите элемент управления HyperLink на каждую страницу, где вы хотите.

например <asp:HyperLink runat="server" id="LogInLink">Login</asp:HyperLink>

Затем либо установите свойство NavigateUrl для гиперссылки в коде позади, напримерthis.LogInLink.NavigateUrl = Global.MySpecialUrl; или используйте запись <%=Global.MySpecialUrl%> для ссылки на нужное значение из кода в NavigateUrl в разметке.

[Извините, это код C #]

...