这个BUG让我对.NET失望极了

金矿科技 2005-10-19 10:53:06
好好的按钮事件,前两天还可以执行的,什么也没动过,现在就是死活不去执行了,调试断点也不执行,重新建了aspx文件和页面类也不执行,看别人贴子里写的把按钮事件注册从 InitializeComponent()里转到OnInit()里或者Page_Load()里,或者把InitializeComponent()函数改名字,或者把按钮事件改名字,或者加到前台按钮声明的代码里,或者删掉按钮重新加进来,反正那个按钮就是在那死猪一样的不执行代码,上午本来好好的心情被它弄的沮丧极了。T N N D . NET我对你太失望了。

各位达人有什么什么解决的办法阿
...全文
958 38 打赏 收藏 转发到动态 举报
写回复
用AI写文章
38 条回复
切换为时间正序
请发表友善的回复…
发表回复
sunzhishan 2005-10-20
  • 打赏
  • 举报
回复
我是用Microsoft Visual Web Developer 2005 的。别的没用过。算是新手儿?
不过在这里面ImageButton 没有Onclick事件。而是有个OnClientClick事件。像下面这样
<asp:ImageButton ID="ImageButton1" runat="server" OnClientClick="Shit_Click" />
。不知道对不对哈。
the777 2005-10-20
  • 打赏
  • 举报
回复
高人呀..
金矿科技 2005-10-19
  • 打赏
  • 举报
回复
原来如此,我以前写C++的,所以做.net项目自然就想着用C#了。 谢谢指教了。
  • 打赏
  • 举报
回复
在这个方面,vb.net的设计器处理远比c#好很多,我一离开原来公司就把c#放开确立vb.net为我的称手工具了。vb.net在你胡乱破坏设计器上的代码结构之后,如果恢复回来,很多控件声明可以自动产生(有点智能了),而c#则非常迂腐,几乎所有的声明都不能逆向产生,都要你按照从工具栏拖入设计器着一种方式产生,否则就得手动些声明代码。vb.net的事件方法注册与事件代码在同一条语句上,而不向c#那样分在相隔遥远的两处,这也是其开发起来比较高效和可靠的原因之一。
henryfan1 2005-10-19
  • 打赏
  • 举报
回复
那只能对楼主表示同情:(
金矿科技 2005-10-19
  • 打赏
  • 举报
回复
to henryfan1(每天好心情(*_*))

你的方法我早也试过了 呵呵 不管用。
金矿科技 2005-10-19
  • 打赏
  • 举报
回复
楼上的高手,程序员写完代码编译好后让美工用DREAMWEAVER修改.aspx前台文件很正常阿,VS不是号称前后台代码分离的很好嘛,剪切然后粘贴控件到同一页面的其他位置,难道后台事件就活该丢失?这个也太不厚道了吧?
henryfan1 2005-10-19
  • 打赏
  • 举报
回复
的确有这种情况(但发生的情况很少),碰到这种情况真是让人哭笑不得(因为你跟踪代码时事件是绑了,实际事件没被激活执行)。有一个解决方法在页面上画一个新BUTTON,原有BUTTON注册SCRIP来触发新BUTTON的事件。
碰到好几次我都没在CSDN提,没有碰到过的人一定会说不可能的:)
楼主还是找解决方法吧。
金矿科技 2005-10-19
  • 打赏
  • 举报
回复
算了 结贴了 谢谢各位 。
  • 打赏
  • 举报
回复
天?连给方法改名字的做法你都想得出来!

你应该找个地方把你的aspx和代码文件传出来下载,或者换个.net论坛把文件传上去把地址贴出来。

我用vs 2003和vs 6.0d,,从未有所谓丢失事件的时。过去,我下边的程序员嚷嚷着丢失事件了,但是很明显(只要你仔细观察一下)他们在设计器上胡乱拖动、剪切控件,或者手工去修改html而且出错了(把html从错误改回然后要求出错前的控件声明也回来,这是做梦)。
mapserver 2005-10-19
  • 打赏
  • 举报
回复
vs 2003一直会丢事件,如果和vss 6.0d一起配用的话,丢事件的频率更高。
51dianying 2005-10-19
  • 打赏
  • 举报
回复
碰到多次了.删除重新写就好.烂IDE.
.net真不稳定!!!
金矿科技 2005-10-19
  • 打赏
  • 举报
回复
可能是我的人品问题......

:(
luckljtchinaren 2005-10-19
  • 打赏
  • 举报
回复
我现在做的一个项目也不时发生这种情况,搞得我一发现按钮没反应就去看事件有没丢失,都成了条件反射...
金矿科技 2005-10-19
  • 打赏
  • 举报
回复
to 冷风

单步调过。
如果执行
ASPNET.StarterKit.Commerce.ShoppingCartDB cart = new ASPNET.StarterKit.Commerce.ShoppingCartDB();
String cartId = cart.GetShoppingCartId();
那就好了,哪怕出错也行啊。-.-!
helimin19 2005-10-19
  • 打赏
  • 举报
回复
是不在存在問題?你單步調試沒有?or 裡面只有Response.Write("AA");試試
helimin19 2005-10-19
  • 打赏
  • 举报
回复
排除系統原因
分析一下:
ASPNET.StarterKit.Commerce.ShoppingCartDB cart = new ASPNET.StarterKit.Commerce.ShoppingCartDB();
String cartId = cart.GetShoppingCartId();
金矿科技 2005-10-19
  • 打赏
  • 举报
回复
To zhangyu028(天哪,这么多人)

最开始是这样的,后来没法子才每个地方都试着加一下,所以才。。。 唉
豌豆干 2005-10-19
  • 打赏
  • 举报
回复
楼主的程序看起来怎么这么乱呢。我不知道是哪里出错,但正常情况下程序应该是这样的。

前台:
<tr><td><IMG height="49" src="PassportImages/spacer.gif" width="20"> <asp:ImageButton id="ImageButton1" ImageUrl="PassportImages/check_22.gif"
去掉OnClick runat="server"></asp:ImageButton></td></tr>

后台:
#region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
//去掉这里
//this.ImageButton1.Click += new System.Web.UI.ImageClickEventHandler(this.Shit_Click);
base.OnInit(e);
}

/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.Load += new System.EventHandler(this.Page_Load);
this.ImageButton1.Click += new System.Web.UI.ImageClickEventHandler(this.Shit_Click);

}
#endregion


public void Shit_Click(object sender, System.Web.UI.ImageClickEventArgs e)
{
// UpdateShoppingCartDatabase();
ASPNET.StarterKit.Commerce.ShoppingCartDB cart = new ASPNET.StarterKit.Commerce.ShoppingCartDB();
String cartId = cart.GetShoppingCartId();
}


我相信应该没有问题了。
金矿科技 2005-10-19
  • 打赏
  • 举报
回复
to helimin19(冷風.net)

没法子了 所以都写上了 一次都不执行 嘿嘿
加载更多回复(18)

62,047

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧