2012-03-27 81 views
0

我一直在網絡上搜索解決此問題的方法,但到目前爲止沒有遇到任何問題。向Datalist添加行

基本上我有一個表,如下所示,我由ItemTemplate字段組成,並由我的數據庫中的DataSet填充。它向用戶展示品牌,然後他們可以點擊並進入另一個頁面。

我需要在名爲「所有品牌」的表中添加另一個選項。因此,我可以使用它來轉到顯示所有品牌的頁面。不過,我似乎無法輕鬆地將此添加到DataList中。

<asp:DataList id="TypesList" runat="server" Visible="true" RepeatColumns="3" Width="100%" ItemStyle-Width="25%" ItemStyle-HorizontalAlign="Center"> 
    <ItemTemplate> 
    <div style="position:relative;vertical-align:top;"> 
     <table border="0" cellpadding="0" cellspacing="0" width="100%"> 
     <tr> 
      <td align="center" style="height:170px;vertical-align:top;text-align:center;" valign="top"> 
      <asp:Label ID="lblID" runat="server" Visible="false" Text='<%#DataBinder.Eval(Container.DataItem,"batteryTypeID")%>'></asp:Label> 

      <a href='/<%#DataBinder.Eval(Container.DataItem,"catid")%>/<%#DataBinder.Eval(Container.DataItem,"catname")%>/<%#DataBinder.Eval(Container.DataItem,"brandid")%>/<%#DataBinder.Eval(Container.DataItem,"brand_name")%>/<%#DataBinder.Eval(Container.DataItem,"batteryTypeID")%>/<%#DataBinder.Eval(Container.DataItem,"typeName")%>' target='_self'> 
       <asp:Image ID="imgProd" runat="server" ImageUrl='images/none.jpg' /> 
      </a> 
      </td> 
     </tr> 
     <tr> 
      <td class="productdesc" style="text-align:center;vertical-align:top;"> 
      <span style="color:#000;font-weight:bold;font-size:120%;"> 
       <%#DataBinder.Eval(Container.DataItem, "typeName").ToString%> 
      </span> 
      </td> 
     </tr> 
     </table> 
    </div> 
    </ItemTemplate> 
</asp:DataList> 
+0

從你的問題中不太清楚 - 是否只需添加一個'HeaderTemplate'或'FooterTemplate'就可以將鏈接「All Brands」放到你的DataList中。也許添加一個你想要的結果的簡單例子,使它更清晰你在找什麼。 – Filburt 2012-03-27 11:43:13

+0

這就是我的目標。有額外的行顯示「所有類型」作爲選項。看看這個圖像的例子。 http://postimage.org/image/h61uxssxf/ – Scrappy 2012-03-27 11:58:21

+0

Filburt的點。將這個默認條目添加到您的頁眉或頁腳模板中,因爲如果您想將內容保留在DataList中,則數據之間不存在關聯。另外,爲什麼不添加額外的條目之外的DataList,你沒有特別使用任何超結構化的HTML輸出那裏... – SeanCocteau 2012-03-27 12:25:04

回答

0

你應該能夠用下面的佈局來解決這個:

<asp:DataList id="TypesList" runat="server" Visible="true" RepeatColumns="3" Width="100%" ItemStyle-Width="25%" ItemStyle-HorizontalAlign="Center"> 

    <HeaderTemplate> 
    <div style="width:170px; float:left;"> 
     <div>All Brands Pic and Link</div> 
     <div> 
     <span style="color:#000;font-weight:bold;font-size:120%;">All Brands</span> 
     </div> 
    </div> 
    </HeaderTemplate> 

    <ItemTemplate> 
    <div style="width:170px; float:left;"> 
     <div> 
     <asp:Label ID="lblID" runat="server" Visible="false" Text='<%#DataBinder.Eval(Container.DataItem,"batteryTypeID")%>'></asp:Label> 
     <a href='/<%#DataBinder.Eval(Container.DataItem,"catid")%>/<%#DataBinder.Eval(Container.DataItem,"catname")%>/<%#DataBinder.Eval(Container.DataItem,"brandid")%>/<%#DataBinder.Eval(Container.DataItem,"brand_name")%>/<%#DataBinder.Eval(Container.DataItem,"batteryTypeID")%>/<%#DataBinder.Eval(Container.DataItem,"typeName")%>' target='_self'> 
      <asp:Image ID="imgProd" runat="server" ImageUrl='images/none.jpg' /> 
     </a> 
     </div> 
     <div> 
     <span style="color:#000;font-weight:bold;font-size:120%;"> 
      <%#DataBinder.Eval(Container.DataItem, "typeName").ToString%> 
     </span> 
     </div> 
    </div> 
    </ItemTemplate> 

</asp:DataList> 

我的CSS是有點生疏,但我相信人們會很樂意指出如何可以更好的風格。