在调试模式下单击按钮时,页面会重新加载但从未到达click事件内的断点。但是,page_load中的断点工作正常。
基本上,就好像按钮的click事件中的代码没有被执行一样。
我检查了网站的源代码控制,另一位开发人员在他的计算机上试了一下。点击事件在那里工作得很好,抓住里面的断点。
我在我的计算机上尝试了另一个网站,它有同样的问题。所以这是我的电脑特有的,而不是任何网站特有的。
是否有一些设置我可能会错误地更改,可能导致点击事件在调试时停止工作?
任何帮助都将不胜感激。
编辑: 我在调试器中运行的所有站点上都会出现此问题,并且不会动态创建按钮。
编辑: 添加断点时没有任何问题迹象。我不认为这是一个断点问题,我认为这是点击事件没有解决的问题。我将相同的代码放在另一台开发人员机器上,并且在该机器上进行调试时,click事件工作正常。
答案 0 :(得分:2)
如果它是您的机器特有的东西,并且在所有事情都失败后,我会在Visual Studio上进行修复。当事情变得奇怪而且它通常有效时,我不得不这样做几次。但请记住先消耗所有其他途径。
答案 1 :(得分:0)
按钮是如何创建的?如果它已动态添加到页面中,请记住必须在加载事件之前完成此操作,否则事件将无法连接。这是我听过这种事情的最常见原因。
答案 2 :(得分:0)
当你把断点放在button_click事件中时,是否说“符号不会加载”或“源文件不同”?
如果是这样,您已经修改了代码文件&构建二进制文件(与网站使用的不同)。
答案 3 :(得分:0)
在我的Page_Load事件中,我会检查IsPostBack属性以确保它实际上是一个帖子而不是get。我将验证是否已填充Controls集合,并且所有控件ID都与Request.Forms.Keys中的控件ID匹配。
这个建议的原因是,如果您在浏览器或花哨的代理中有任何加载项与提交的表单和输入名称相混淆,则不会触发这些控件的事件。
答案 4 :(得分:0)
当我记得类似的东西时,我会被刺伤:
我已经将应用程序从vs2005升级到vs2008并且我的按钮代码点击工作于2005年,但在2008年我需要在声明的末尾添加“Handles”限定符,如下所示:
Sub btnSave_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnSave.Click
无论出于何种原因,2005年的代码都不需要它,但2008年需要它,我依稀记得你所描述的症状一样。
答案 5 :(得分:0)
所以我测试的所有点击事件似乎都是图像按钮,而我本地机器上没有这些图像。出于某种原因,当图像丢失时,点击事件不会触发。