Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/31.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
ASP.NET-从未调用以编程方式创建的按钮的事件处理程序_Asp.net_Event Handling_Imagebutton - Fatal编程技术网

ASP.NET-从未调用以编程方式创建的按钮的事件处理程序

ASP.NET-从未调用以编程方式创建的按钮的事件处理程序,asp.net,event-handling,imagebutton,Asp.net,Event Handling,Imagebutton,所以我需要在asp.net中编写简单的“扫雷者”游戏(仅用于学习目的-它应该几乎只有javascript,但无论如何…) 我在PageLoad动态创建游戏板,当每个TableCell包含一个ImageButton时,我会创建一个Table 当我创建每个按钮时,我会将我自己的事件处理程序添加到它的Click事件中: cellButton.Click += new EventHandler(tryOpenCell); 当我运行项目时,游戏页面完全按照预期加载,但当我单击任何单元格(如我所说的Ima

所以我需要在asp.net中编写简单的“扫雷者”游戏(仅用于学习目的-它应该几乎只有javascript,但无论如何…)

我在
PageLoad
动态创建游戏板,当每个
TableCell
包含一个
ImageButton
时,我会创建一个
Table

当我创建每个按钮时,我会将我自己的事件处理程序添加到它的Click事件中:

cellButton.Click += new EventHandler(tryOpenCell);
当我运行项目时,游戏页面完全按照预期加载,但当我单击任何单元格(如我所说的ImageButton)时,请求返回到服务器代码,但按钮的事件处理程序从未调用。相反,整个过程只是重复本身,意味着重新开始整个桌面游戏


所以我的问题是为什么我的事件处理程序从未调用

回发时,应重新创建按钮,然后它将处理事件

protected void Page_Load(object sender, EventArgs e)
{
        ImageButton btn = new ImageButton();
        btn.ID = "Btn";
        btn.Click += new EventHandler(tryOpenCell);
        form1.Controls.Add(btn);
 }

在处理事件处理程序之前,应该在页面加载事件中重新创建按钮

我想最重要的是在最初创建按钮和回发时指定相同的ID?在处理事件handler之前,应该在页面加载事件中重新创建按钮。我已经在我这边测试过了。正如您通常知道的,当您单击按钮时,在单击事件处理程序之前调用页面加载事件。谢谢!我认为我在ASP.Net上的event deriven编程工作方式上存在差距。现在它更有意义了。