2010-11-14 4 views
2

У меня проблема здесь, когда div не размещается так, как мне хотелось бы.ASP Listview, ItemPlaceHolder проблемы

Это код ASP Я использую:

<asp:ListView ID="categoriesListView" runat="server"> 

    <LayoutTemplate> 
     <div class="main" runat="server"> 
      <div ID="itemPlaceholder" class="sub" runat="server"> 

      </div> 
     </div> 
    </LayoutTemplate> 

    <EmptyDataTemplate> 
     <div class="main" runat="server"> 
      <div class="sub" ID="itemPlaceholder" runat="server"> 
       No data was returned. 
      </div> 
     </div> 
    </EmptyDataTemplate> 

    <ItemTemplate> 
     <asp:Image AlternateText='<%# Eval("CategoryName") %>' ID="Image1" runat="server" ImageUrl='<%# Eval("CategoryImgUrl", "~/Images/{0}") %>' /> 
     <asp:Label ID="ProductNameLabel" runat="server" Text='<%# Eval("CategoryName") %>' /> 
    </ItemTemplate> 

</asp:ListView> 

Я ожидал результатов, как это:

<div class="main"> 
     <div class="sub"> 
      ... 
     </div> 
     <div class="sub"> 
      ... 
     </div> 
     <div class="sub"> 
      ... 
     </div> 
     ... 
</div> 

Результат был один большой ДИВ «главный», содержащий все, с не " sub "divs.

Если я добавлю itemPlaceholder на один уровень глубже, то произойдет одно и то же, теперь с 1 "sub" div и все, что нажато туда. Как я могу это решить?

ответ

2

Изменить его выглядеть следующим образом:

<LayoutTemplate> 
    <div class="main" runat="server"> 
     <div ID="itemPlaceholder" runat="server"> 

     </div> 
    </div> 
</LayoutTemplate> 

<EmptyDataTemplate> 
    <div class="main" runat="server"> 
     <div class="sub" ID="itemPlaceholder" runat="server"> 
      No data was returned. 
     </div> 
    </div> 
</EmptyDataTemplate> 

<ItemTemplate> 
    <div class="sub" > 
    <asp:Image AlternateText='<%# Eval("CategoryName") %>' ID="Image1" runat="server" ImageUrl='<%# Eval("CategoryImgUrl", "~/Images/{0}") %>' /> 
    <asp:Label ID="ProductNameLabel" runat="server" Text='<%# Eval("CategoryName") %>' /> 
    </div> 
</ItemTemplate> 

+0

@WebDevHobo вы понимаете, почему это работает? – jcolebrand