UrlProperty и относительные URL - PullRequest
0 голосов
/ 05 августа 2010

У меня есть пользовательский элемент управления UserControl (унаследованный System.Web.UI.UserControl) с этим свойством, для которого необходимо указать URL-адрес на сайте, на который вы хотите сослаться:

 [DefaultValue("~/NewsItem.aspx"), UrlProperty("*.aspx")]
 public string InternalItemViewUrl
 {
  get { return _internalItemViewUrl; }
  set { _internalItemViewUrl = value; }
 }

Элемент управлениябудет правильно отображать раскрывающийся список выбора URL, но если вы выберете URL из списка, он не изменит его на относительную к сайту ссылку ~ / foo.aspx, как это делает HyperLink, а вместо этого получит только «foo».aspx ", который не работает (элемент управления находится в / controls, а страница, очевидно, нет).Если вы прокрутите весь путь вниз и используете «Pick URL ...», который открывает полное всплывающее окно, страница, выбранная в этом диалоговом окне, преобразуется в «~ / foo.aspx»

Am Iздесь что-то упущено, чтобы заставить это работать?

Ответы [ 2 ]

0 голосов
/ 27 августа 2013

Неважно, где находится элемент управления, URL-адрес относительно страницы, на которой расположен элемент управления.
Таким образом, если элемент управления размещен на странице "foo.aspx" и ссылается на страницу "foo2.aspx" (которая находится в том же каталоге, что и "foo.aspx"), то просто наличие "foo2.aspx" в URL элемента собственность будет работать.

0 голосов
/ 05 августа 2010

Проверьте атрибуты в HyperLink, особенно атрибут [Editor].

[DefaultValue(""),
 WebSysDescription("HyperLink_NavigateUrl"),
 UrlProperty, Bindable(true), WebCategory("Navigation"), 
 Editor("System.Web.UI.Design.UrlEditor, System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a", typeof(UITypeEditor))]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...