2013-11-20 72 views
0

我正在嘗試使奇數float:left和偶數float:right。然而,無論列表中有多少項目,顯然每個項目都是奇數AND元素1。我如何在CSS中訪問它。顯然,由於每個項目是1,那麼:nth-child(odd) {float:left;}:nth-child(even){float:right;}不起作用。你還可以訪問他們嗎?訪問ASP ListView中的每個項目

這將是結構類似這樣:

<div class="options"> 
           <asp:ListView ID="ListView1" runat="server" 
            DataSourceID="OptionsObjectDataSource" 
            EditIndex="-1" 
            OnPreRender="FabricsListView_PreRender"> 
            <ItemTemplate> 
              <asp:DropDownList ID="OptionsAltDropDownList" runat="server" style="width:100%" 
              DataSourceID="OptionsObjectDataSource" 
              DataTextField="description" 
              DataValueField="id" 
              AppendDataBoundItems="true" 
              OnDataBound="OptionsAltDropDownList_DataBound" > 
              <asp:ListItem Value="">- Select Alt Option -</asp:ListItem> 
             </asp:DropDownList> 
             <asp:ObjectDataSource ID="OptionsObjectDataSource" 
               runat="server" 
               SelectMethod="GetOptionList" 
               TypeName="Data.ProductList" > 
             </asp:ObjectDataSource> 
            </ItemTemplate> 
           </asp:ListView> 
           <asp:ObjectDataSource ID="OtherObjectDataSource" runat="server" 
                  SelectMethod="GetByProduct" 
                  TypeName="Data.RequirementList" 
                  OldValuesParameterFormatString="original_{0}"> 
            <SelectParameters> 
             <asp:ControlParameter ControlID="OptionHiddenField" Name="id" PropertyName="Value" Type="String" /> 
            </SelectParameters> 
           </asp:ObjectDataSource> 
          </div> 

回答

0

我不知道你在哪裏檢查索引。但你可以使用這樣的東西:

<some_element style="<%#RenderItemStyle(Container.ItemIndex)%>" 

其中「some_element」是您的ItemTemplate中的任何元素。這樣,你會在你的代碼創建一個函數RenderItemStyle隱藏類:

protected string RenderItemStyle(int index) 
{ 
    if ((index % 2) == 0) 
     return style_for_even_row; 
    else 
     return style_for_odd_row; 
} 

在運行時您RenderItemStyle將呼籲每一行。然後你可以根據「index」參數在你的函數中做任何你想做的事情。

0

這是我有我的div s的方式。他們不在適當的地方。我會詳細說明,但是我沒有在我的問題的代碼中張貼那篇文章。基本上,ListView本身必須在div(包含整個列表),並且div也必須在div之內,以給它一些界限。此外,立即在<ItemTemplate>內必須是div。這是列表中的每個項目。這是現在可以正確應用子樣式的div。

相關問題