Как поместить вертикальную полосу прокрутки в asp:Repeater ItemTemplate?

Я унаследовал элемент управления.ascx, который состоит из конструкции asp: repeater, содержащей HeaderTemplate, ItemTemplate и пустой FooterTemplate.

И заголовок, и шаблоны элементов связаны с источником данных.

Мой вопрос заключается в следующем: я хочу, чтобы к ItemTemplate был применен вертикальный ползунок, чтобы можно было прокручивать элементы вверх, вниз, пока HeaderTemplate остается статичным.

Я попытался использовать asp:Panel в ItemTemplate, но это не отображает строку в шаблоне.

Я прибег к инкапсуляции всего asp:Repeater в asp:Panel, которая задает вертикальную полосу прокрутки. Это работает, но прокручивает заголовок вне поля зрения, если количество строк в ItemTemplate велико.

Если кто-то может помочь и предложить путь вперед, я был бы очень признателен.

1 ответ

Это может быть сделано простым способом с некоторыми приемами CSS, например

Повторите элемент шаблона разметки

<HeaderTemplate>
  <div class="template">
</HeaderTemplate>
<ItemTemplate>
    Your Stuff
 </ItemTemplate>
<FooterTemplate>
  </div>
</FooterTemplate>

CSS определен для "шаблона"

.template {
   height: 200px;
   overflow-y: scroll;
}

Надеюсь, это поможет!

Другие вопросы по тегам