所以我需要在asp.net中编写简单的“扫雷”游戏(仅用于学习目的 – 它应该几乎只是
javascript但无论如何…)
我在PageLoad中动态创建游戏板,通过在每个TableCell包含一个ImageButton时创建一个表.
当我创建每个按钮时,我正在添加它的Click事件我自己的事件处理程序:
cellButton.Click += new EventHandler(tryOpenCell);
当我正在运行项目时,游戏页面加载完全符合预期,但是当我点击任何单元格(我说的是ImageButton)时,请求返回到服务器代码,但按钮的事件处理程序从未被调用.相反,整个过程只是重复,意味着重新生成整个桌面游戏.
所以我的问题是为什么我的事件处理程序从未被调用?
最佳答案 在Postback上你的按钮应该重新创建,然后它将处理事件..
protected void Page_Load(object sender, EventArgs e)
{
ImageButton btn = new ImageButton();
btn.ID = "Btn";
btn.Click += new EventHandler(tryOpenCell);
form1.Controls.Add(btn);
}
您的按钮应该在页面加载事件中重新创建,然后才能处理事件处理程序.