Я создал кнопку из кода позади:Динамическая кнопка в aps.net не работает
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 не запускается. Я могу сказать, что содержимое, которое было видно на странице, исчезает, если это ключ.
Мне нужно создать это в специальном защищенном методе void.
Возможно, вы должны использовать JavaScript вместо C# для такой динамики. И если вы используете MVC, реализовать динамику также проще. –
@LeiYang Не знаю MVC. Можете ли вы привести пример Javascript? Проблема заключается в том, что dynamicPanel создается для каждого элемента в списке. Таким образом, есть несколько из них на странице. – matt2605
Вебформы устарели, это не Winform, поэтому лучше начать с MVC сейчас. –