Доступ к коллекции статических подуровней из кода в Sitecore - PullRequest
0 голосов
/ 28 января 2012

В Sitecore как я могу получить доступ ко всем статически связанным подуровням из кода позади ASCX или и ASPX, не зная идентификаторов?

Ответы [ 2 ]

1 голос
/ 30 января 2012

Я не уверен, правильно ли я понял ваш вопрос.Но разве вы не заинтересованы в получении определенных подэлементов и XSLT?

В этом случае вам нужно получить доступ к определению LayoutDefinition элементов, как я упоминаю в этом посте: http://sitecorejm.blogspot.com/2007/09/getting-items-rendering.html

Эточто ты хочешь?

1 голос
/ 28 января 2012
foreach(var c in this.Controls){
  if(c is Sublayout) {
    var sl = (Sublayout)c;
  }
}

Или с LINQ:

var sublayouts = this.Controls.Where(c => (c is Sublayout)).Select(c = > (Sublayout)c);

ОБНОВЛЕНИЕ:

Я пытался сделать это недавно, получив элемент управления HtmlHead, так что Я написал сообщение в блоге о том, как это сделать .Я только что понял, что вы можете сделать что-то подобное для подуровней.

Вот полезный метод для получения элементов управления на странице по их типу:

WebUtil.FindControlsOfType(typeof(Sublayout), Sitecore.Context.Page.Page)
...