2011-08-29 39 views
0

我正在一個ASP.NET網站,其中我顯示結果由內部搜索引擎返回給最終用戶。我解析結果創建HTML字符串以顯示如下結果如何添加按鈕和關聯點擊在ASP.net

 foreach (XmlNode result in results) 
    { 
     srHtml = "<li class=\"\" style=\"\">"; 
     srHtml += "<a href=\"" + result.SelectSingleNode("./web:Url", nsmgr).InnerText + "\"> <span class=\"title\">" + result.SelectSingleNode("./web:Title", nsmgr).InnerText + "</span></a> <button>Short This URL</button>\n"; 
     if (result.SelectSingleNode("./web:Description", nsmgr) != null) 
      srHtml += "<br />" + result.SelectSingleNode("./web:Description", nsmgr).InnerText + "<br />"; 
     srHtml += "<span class=\"url\">" + result.SelectSingleNode("./web:Url", nsmgr).InnerText + "</span></li>\n"; 
     phResults.Controls.Add(new System.Web.UI.LiteralControl(srHtml)); 

    } 

我可以在結果頁面上看到該按鈕。但我不知道在哪裏可以放置用戶點擊此按鈕時運行的代碼。當用戶點擊該按鈕時,我想用縮短的網址來更改該按鈕文本框。

任何人都可以幫助我嗎?

問候, 薩米特Lonkar

回答

1

什麼做這種方式?:

Button button = new Button(); 
button.ID = "Button1"; 
button.Click += new EvandHandler(Button1_Click); 
phResults.Controls.Add(button); 

以及活動handdler:

protected void Button1_Click(object sender, EventArgs e) 
{ 
    //Event handler code here 
} 
+0

非常感謝。順便說一句,我怎麼能通過這個論據?我想用包含特定文本的文本字段替換這個按鈕,我將它作爲參數傳遞給它。 – slonkar

+0

我剛用簡單的console.writeline(「test」)測試了這段代碼;事件處理程序沒有被調用... – slonkar

+0

@Sumit Lonkar:如果您是通過後面的代碼動態創建此按鈕,請務必在每次回發後使用上面的代碼重新創建按鈕。使用OnInit或OnPreInit重新創建控件。做到這一點,然後再次測試事件處理程序。 –

相關問題