我從後面的代碼創建一個按鈕:動態按鈕不起作用
Panel dynamicPanel = new Panel();
Button dynamicButton = new Button();
dynamicButton.Text = "View";
dynamicButton.Click += new EventHandler(dynamicButton_Click);
dynamicPanel.Controls.Add(dynamicButton);
dynamicDiv.Controls.Add(dynamicPanel);
和OnClick
方法:
protected void dynamicButton_Click(object sender, EventArgs e)
{
Response.Write("view button response");
string script = "alert(\"view clicked.\");";
ScriptManager.RegisterStartupScript(this, GetType(),
"ServerControlScript", script, true);
}
當我按一下按鈕,就回發(用的IsPostBack Javascript警報),但EventHandler沒有被解僱。如果這是線索,我可以說在頁面上顯示的內容會消失。
我需要在自定義保護的無效方法中創建它。
也許你應該使用JavaScript而不是C#來實現這樣的動態。如果你使用MVC,實現動態也更容易。 –
@LeiYang不知道MVC。你能舉出Javascript例子嗎?問題是dynamicPanel是爲列表中的每個項目創建的。所以在頁面上有幾個。 – matt2605
Webforms已經過時,現在不是Winform,所以最好從MVC開始。 –