2013-12-13 43 views
2

我試圖使簡單的網站(圖像,按鈕,窗體等),我有很多圖像,但我不想一個一個地設置他們的URL,而是我想做出這樣的事情從一個循環動態調用圖像

例如我有3個圖片圖像1,圖像2,已經創建的Image3所以在HTML

<asp:Image ID="Image1" 
<asp:Image ID="Image2" 
<asp:Image ID="Image3" 
enter code here 

我有圖像的文件夾,其名稱是1,2,...,5,6,... 並且在Page_Load事件上我想打電話給他們那樣

for (int i=1; i< 4;i++){ 
image[i].ImageUrl = "(path of the folder)"+i.ToString()+".jpg"; 
} 

什麼是做到這一點

+0

你發佈的代碼有什麼問題?我可以看到一些明顯的改進,但我認爲這非常符合想法。 – evanmcdonnal

+0

那麼image [i]不是一個有效的變量,它只是不編譯,或者我不知道語法 –

+0

你需要某種形式的imagecontainer('asp:Panel'),這是已知的serverside,只是添加'新的HtmlImage()到這個容器。 – efkah

回答

1

你就要成功了最好的辦法 - 使用FindControl找到每個Image控件

for (int i=1; i< 4;i++) 
{ 
    Control control = Page.FindControl(string.Format("Image{0}", i)); 
    if (control != null) 
    { 
     control.ImageUrl = "(path of the folder)"+i.ToString()+".jpg"; 
    } 
} 

由於@efkah指出,如果你把這些圖像控件面板它會更快找到他們使用MyPanel.FindControl(...

+0

這些圖像是在面板id =「panel1」 –