2012-12-27 15 views
5

因爲我想用以下<div>第一項:如何爲直放站的第一個項目使用不同的樣式?

<div class="six columns"> 
    <a href=""> 
    <img src="" /> 
     <h3>Israeli Embassy Promotes Peace</h3> 
     <h4>At a time when Israel is facing threats of...</h4> 
    </a> 
</div> 

,這對其餘的我想用以下<div>

<div class="six columns"> 
    <ul> 
     <li><a href=""> 
      <h3>This is the first alskdjlak s</h3> 
      </a></li> 
     <li><a href=""> 
      <h3>asd sad asd asd asdasdasdas d</h3> 
      </a></li> 
     <li><a href=""> 
      <h3>dsad asd asd asd asd asd asd</h3> 
      </a></li> 
    </ul> 
</div> 

我該怎麼做呢?

回答

2

你先在後面的代碼中使用一個整數,即先從1 然後在轉發你檢查這個值,你去像:

<asp:Repeater ID="Repeater1" runat="server"> 
    <ItemTemplate> 
     <% if (iCounter == 1) { %> 
      <br />First line id: <%# GetID(Container.DataItem) %> 
     <% } else { %> 
      <br />Next lines id: <%# GetID(Container.DataItem) %> 
     <% } 
      iCounter++; 
     %> 
    </ItemTemplate> 
</asp:Repeater> 

並在後面的代碼:

public int iCounter = 1; 

List<int> oMainIds = new List<int>(); 

protected void Page_Load(object sender, EventArgs e) 
{ 
    for (int i = 0; i < 10; i++) 
    { 
     oMainIds.Add(i); 
    } 

    Repeater1.DataSource = oMainIds; 
    Repeater1.DataBind(); 
} 

public int GetID(object oItem) 
{ 
    return (int)oItem; 
} 

請注意,爲測試,在這裏我把一個nd 10條數據線。此示例呈現:

First line id: 0 
Next lines id: 1 
Next lines id: 2 
Next lines id: 3 
Next lines id: 4 
Next lines id: 5 
Next lines id: 6 
Next lines id: 7 
Next lines id: 8 
Next lines id: 9 
+1

感謝您的指導... // @ Aristos的 – VijayB

+0

爲什麼downvote後面的代碼? – Aristos

0

將您的div封裝在PlaceHolder控件中,並使用e.Item.ItemIndex設置中繼器的OnItemCreated事件中PlaceHolders的可見性,以確定當前項是否是第一個。

或使它們的服務器端的div(與RUNAT =服務器),並直接在中小企業的方式設置的div的知名度

0

使用CSS。

.six_columns ul li 
{ 
    /* Item style */ 
} 

.six_columns ul li:first-child 
{ 
    /* First item style */ 
} 

還有用於editing content via CSS.

+0

即使被稱爲風格,實際上是改變佈局 - 如果你看到完整的問題 – Aristos

+0

那麼這是一個很好的問題哈哈。我今晚會解決它。讓我們知道,如果你在此期間搞清楚了! – Lopsided

2

只是一個更新Aristos的回答方法,不需要後臺代碼方法來獲得ID。

<asp:Repeater ID="Repeater1" runat="server"> 
    <ItemTemplate> 
    <asp:Panel ID="pnlFirst" runat="server" Visible="<%# (Repeater1.DataSource as List<int>).IndexOf((int)Container.DataItem) ==0 %>"> 
    <br />First Item 
    </asp:Panel> 
    <asp:Panel ID="pnlRest" runat="server" Visible="<%# (Repeater1.DataSource as List<int>).IndexOf((int)Container.DataItem) !=0 %>"> 
    <br /> 
    Item: <%# (Repeater1.DataSource as List<int>).IndexOf((int)Container.DataItem) %> 
    </asp:Panel> 
</ItemTemplate> 
</asp:Repeater> 

List<int> oMainIds = new List<int>(); 

protected void Page_Load(object sender, EventArgs e) 
{ 
    for (int i = 0; i < 10; i++) 
    { 
    oMainIds.Add(i); 
    } 

    Repeater1.DataSource = oMainIds; 
    Repeater1.DataBind(); 
} 
相關問題