[英]Dynamically added ASP.NET button click handler being ignored
我正在向這樣的按鈕添加事件處理程序:
btn.Click += new EventHandler(btn_Click);
但是沒有調用btn_Click
函數(永遠不會點擊它中的斷點),按鈕只是重新加載頁面。 在我過去的經驗中,asp按鈕通常在重新加載頁面之前執行點擊代碼,那么如何在動態添加事件時實現呢?
我還設置了CausesValidation = false
,雖然頁面上沒有驗證,所以我認為無論如何都不會產生影響。
無論是否回發頁面,都需要為每個請求綁定事件處理程序。 每個頁面請求的開頭都會丟失事件處理程序的綁定。 按鈕的事件處理程序通常綁定在Page_Load中。
您必須在Load
事件(或之前)上設置事件處理程序。 如果你在Load
后執行它,它將不會被執行,因為在評估事件的處理程序時它將不存在。
檢查此有關頁面生命周期MSDN文章。 我認為它會幫助你理解。 在Load
之后看到事件處理發生在inmediatly
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.