2013-03-29 63 views
0

我對asp.net和vb.net相當陌生,所以如果我不在這裏使用正確的術語,我很抱歉。在vb.net中顯示重複代碼塊的最佳方式是什麼?

我有從該表我要產生一些HTML代碼,如返回的數據集數據庫表,併爲每一行:

<div> 
    <img src="SOURCE" /> 
    <h1>Row1</h1> 
    <input type="button" /> 
    <input type="button" /> 
</div 
<div> 
    <img src="SOURCE" /> 
    <h1>Row2</h1> 
    <input type="button" /> 
    <input type="button" /> 
</div 

什麼是做到這一點的最好方法是什麼?我是否簡單地用整個數據拉回一個對象,然後編寫一個foreach循環遍歷每一行並向頁面插入一個字符串,或者我應該使用用戶控件?

我猜我試圖做一個排序論壇資訊頁,並希望與數據庫中的特定條目來獲取所有的主題,然後用一些輸入控制和圖像在頁面上顯示該列表。我也想添加分頁;所以在任何時間只顯示10個帖子,然後可以分頁到下一頁。

再次我道歉,如果我不是已經很清楚了,但我有一個很難一點點理解來解決這個的最佳方式。

回答

4

你可以使用一個Repeater

<asp:Repeater id="Repeater1" runat="server"> 
     <ItemTemplate> 
      <img src="SOURCE" /> 
      <h1>Row<%# Container.ItemIndex %></h1> 
      <input type="button" /> 
      <input type="button" /> 
     </ItemTemplate> 
    </asp:Repeater> 
+2

中繼器爲您提供了必須「自定義控制」。 GridView和DataList是其他選項。但我同意,直放站似乎是這裏最有可能的候選人。不要使用「for each」和「Response.Write」! – granadaCoder

+0

也許顯示後面的代碼:::: Repeater1.DataSource = myDataSet.SomeTable; Repeater1.Databind(); – granadaCoder

+0

謝謝@ jrummell我要讀一讀中繼器。如果不是這個原因,是否有可能解釋一下用戶控件的用途? – ACynicalGeek

-2

如果你想要重複任何代碼塊。試試這個代碼,我使用了..

示例代碼顯示任何股利3次

<% For i as Integer = 1 To 3%> 
<div> 
    <img src="SOURCE" /> 
    <h1>Row1</h1> 
    <input type="button" /> 
    <input type="button" /> 
</div> <% Next %> 
+1

這不是真正的asp.net。這是來自asp世界的「剩餘」。我不推薦。 – granadaCoder

+0

@granadaCoder而有些人可能會這樣認爲,這是ASP.NET MVC中常用的模式。 – jrummell

+0

好的。我承認我的MVC沒有達到標準。謝謝你的提示。 – granadaCoder

相關問題