2012-08-01 86 views
0

我想要做的就是創建以下動態創建ImageButtons

for(int i = 0; i < numberOfAnswers; i++){ 
     imgString = imgString + "<td><asp:ImageButton id='" + questionName + "' ImageURL='Styles/unClicked.png' runat='server' /></td>"; 
    } 

但是當我使用的HtmlTextWriter寫串出,它attualy寫入標籤了exsatly,而不是將它們轉換爲HTML的。

我是否必須用HTML編寫它們並使用javascript來調用某個方法,或者有沒有一種方法可以在不使複雜的情況下執行此操作?

+0

我認爲,當它輸出標記解析完成時,一種方法是有一個佔位符,然後將'ImageButton'添加到它 – V4Vendetta 2012-08-01 10:52:59

回答

2

你應該實例化ImageButton對象並將其添加到您的網頁的控制結構。然後,他們將呈現自己的標記,註冊事件等

for(int i = 0; i < numberOfAnswers; i++){ 
    var ib = new ImageButton(); 
    var td = new HtmlTableCell(); 

    // assign values, like ID, Image URL, event handlers, etc. here 
    ib.ID = "button_" + i; 
    ib.ImageUrl = "foo"; 
    ib.Click += (sender, e) => { 
     // anonymous event handler 
    }; 

    // "container" can be any control on the page, such as a table row 
    container.Controls.Add(td); 
    td.Controls.Add(ib); 
} 
1
for (var i = 0; i < 5; i++) 
    { 
     ImageButton imgBtn = new ImageButton(); 
     imgBtn.ID = "question" + i; 
     imgBtn.ImageUrl = "Styles/unClicked.png"; 

     PlaceHolder1.Controls.Add(imgBtn); 
    } 

PLACEHOLDER1是RUNAT服務器控件,其中u'd想補充UR生成按鈕。