2009-04-09 13 views
2

データリストを使用してサムネイルのグリッドを作成しようとしています。私はimageurlsの配列を持って、私はコードの背後にそれらをバインドしたい。私はどうしたらそれをやりますか?データリストの最大カラムサイズを5にして、完了するまでサムネールの行を追加したいと思います。Asp.Net DataList ImageUrlのバインド配列

<asp:DataList ID="dlImages" runat="server" 
      RepeatColumns="5" 
      RepeatDirection="Horizontal" 
      RepeatLayout="Flow"> 

    <ItemTemplate> 
     <asp:Image ID="imgStore" runat="server" /> 
    </ItemTemplate> 

</asp:DataList> 

分離コード:

protected void BindImages(string[] imageurls) 
{ 
    for (int i = 0; i < imageurls.Length; i++) 
    { 
     . 
     . 
     . 
    } 
} 

答えて

6

私はこれがあなたのためにそれを行うだろうと思い

<asp:DataList ID="dlImages" runat="server" 
     RepeatColumns="5" 
     RepeatDirection="Horizontal" 
     RepeatLayout="Flow"> 

<ItemTemplate> 
    <img src="<%# (string)Container.DataItem %>" /> 
</ItemTemplate> 

</asp:DataList> 

コード

protected void BindImages(string[] imageurls) 
{ 
    dlImages.DataSource = imageurls; 
    dlImages.DataBind(); 
} 

背後ます。また

を行うことができるかもしれません
<asp:Image runat="server" id="imgStore" 
    ImageUrl="<%# (string)Container.DataItem %>" /> 

ただし、サーバーコントロールでは、レンダリングブロックが邪魔になることがあります。

+0

これは実際のイメージを使用すると素晴らしいですが、私が作成したものを使用した場合、〜/ UserPages/Photo/GetThumbnail.aspx?id = 7 ...これは動作しません。 – user84786

+0

その理由はありますか? – user84786

関連する問題