2011-07-01 92 views
0

我一直在收到這個和nothin是有幫助的一些人可以解決這個錯誤我是在運行時addinfg圖像和鏈接從數據庫中提取和動態圖像控制,但這個錯誤正在我的方式。 找到了具有相同ID'projectimg8'的多個控件。 FindControl要求控件具有唯一的ID。幫助找到具有相同ID「'的多個控件。 FindControl需要控件具有唯一的ID

string get = ListBox1.SelectedItem.Text; 
    DataSet ds = con.getprojectgallery(get); 
    if (ds!=null) 
    { 
     int count = ds.Tables[0].Rows.Count; 
     for (int i = 0; i < count; i++) 
     { 
      Image img = new Image(); 
      img.ID = "projectimg" + count.ToString(); 
      img.ImageUrl = ds.Tables[0].Rows[0][0].ToString(); 
      img.Height = 80; 
      img.Width = 80; 
      img.ToolTip = ds.Tables[0].Rows[0][1].ToString(); 
      pnlgallery.Controls.Add(img); 
      pnlgallery.Controls.Add(new LiteralControl("<br />")); 
     } 
+0

錯誤消息是有關錯誤的原因很明顯:在有相同ID的控制。所以,請確保沒有相同ID的控件。 – VikciaR

+0

projectimg + i.tostring()是一個獨特的名稱。 – user614946

回答

3

將其更改爲:

img.ID = "projectimg" + i.ToString(); 

你需要增加的計,不計變量本身。

0

確保當您生成圖像時,它們都具有唯一的ID。

你向我們展示了一些代碼,它會更容易..

編輯:

感謝您的代碼。

在設置ID的行中,每次都使用相同的數字,因爲count表示行數。

你可以使用馬特的代碼,或者:

img.ID = String.Format("projectimg{0}", i); 
+0

string get = ListBox1.SelectedItem.Text; DataSet ds = con.getprojectgallery(get); (ds!= null) int count = ds.Tables [0] .Rows.Count; (int i = 0; i user614946

+0

檢查我更新的帖子。此外,請確保下次您編輯您的問題,並在那裏包括源代碼 - 它看起來更好格式化;) – rochal

+0

謝謝..我didint抓住一個..謝謝 – user614946

相關問題