您能告诉我以下代码有什么问题吗?
Panel div = new Panel();
Button btn1 = new Button { Text = "Delete", CommandArgument = "argument", ID = "remove" };
Button btn2 = new Button { Text = "Insert", CommandArgument = "argument2", ID = "insert" };
btn1.Click += new EventHandler(btn_click);
btn2.Click += new EventHandler(btn_click);
div.Controls.Add(btn1);
div.Controls.Add(btn2);
ph_plan.Controls.Add(div); // where ph_plan is a placeholder in the user control
protected void btn_click(object sender, EventArgs e)
{
Button btn = (Button)sender;
if(btn.ID == "remove")
// do this
else
// do that
}
上面的代码在用户表单中的按钮上单击后立即发生。它应该创建2个分配了事件的新按钮。确实,它创建了按钮,但是当我单击它们时,什么也没有发生。我猜事件无法注册。我在这里做错了什么?
参考方案
发生这种情况的原因是,Page
是无状态类,一旦呈现了所有内容,它就会被销毁。因此,一旦进行回发,该信息就会丢失,并且您的Page
类不了解按钮的事件,因为动态按钮不是aspx
文件的一部分。
您需要维护可能在会话中创建的动态控件的集合,以便可以在回发之后重新创建它们。有一个it here的示例。
当回复有时是一个对象有时是一个数组时,如何在使用改造时解析JSON回复? - java我正在使用Retrofit来获取JSON答复。这是我实施的一部分-@GET("/api/report/list") Observable<Bills> listBill(@Query("employee_id") String employeeID); 而条例草案类是-public static class…
改造正在返回一个空的响应主体 - java我正在尝试使用Retrofit和Gson解析一些JSON。但是,我得到的响应机构是空的。当我尝试从对象中打印信息时,出现NullPointerException。我确保URL正确,并且我也确保POJO也正确。我正在使用jsonschema2pojo来帮助创建POJO类。这是我要解析的JSON{ "?xml": { "@versi…
每个文件合并后添加换行 - python我有很多类似以下内容的JSON文件:例如。1.json{"name": "one", "description": "testDescription...", "comment": ""} test.json{"name"…
从onchange触发.click()时,IE9上出现“ SCRIPT5访问被拒绝”错误 - c#我们希望减少用户在我们的网站上上传文件所需的步骤;因此,我们使用jQuery通过以下标记(简化)打开和回发文件:<a onclick="$('#uplRegistrationImage').click();"> Change profile picture </a> <!-- Hidden…
您如何在列表内部调用一个字符串位置? - python我一直在做迷宫游戏。我首先决定制作一个迷你教程。游戏开发才刚刚开始,现在我正在尝试使其向上发展。我正在尝试更改PlayerAre变量,但是它不起作用。我试过放在列表内和列表外。maze = ["o","*","*","*","*","*",…