一个奇怪的问题! (50分)

  • 主题发起人 主题发起人 长夜孤星
  • 开始时间 开始时间

长夜孤星

Unregistered / Unconfirmed
GUEST, unregistred user!
我在做一个C#.Net数据库应用项目时,在很多页面都有一个TextBox的关键字文本输入框后跟着一个查询Button,有的在TextBox里输入回车后会自动执行Button的OncLick()代码,有的则不执行,请问高手这是怎么回事?
 
button.default:=True
 
to bjdribllec:
我用的是C#.Net,Button没有default属性
 
你要把焦点移到TextBox中,TextBox.SetFocus
 
你要把焦点移到TextBox中,TextBox.SetFocus?
我问的是C#.Net的问题,不是Delphi的
 
问题不是很清楚,只能提醒你几个地方
form.acceptbutton是否被设定
textbox的textchange是否调用了button 的click事件
有源码的话一看就应该清楚问题所在
 
我知道这个问题。他有一个属性AccectButton这个吧。差不多是这个。就可以设置一下。
 
不好意思,我没说清楚,我做的是Web应用程序,不是Windows应用程序。
 
我在C#中测试了一下,发现确定存在楼主所说的现象,该现象的产生条件如下:
在网页中,放置一个“Web窗体”上的TextBox控键和Button控键,以及放置一个“Html”上的TextField控键和Submit Button控键。
这样,在TextBox里输入回车后会自动执行Button的OncLick()代码。但本人也不知道原因,希望知道原因的朋友告诉我,谢谢了!!!
 
原因可能是这样:因为<ASP:Form...runat="server"...>....<ASP:Form>
自动产生的HTML代码会自动生成一些隐藏的<Input...>,其实这就跟Button生成的HTML是一样的,以于你所期望的Button就没有响应OnClick().
我的解决方法:在WebForm页面中再放一个TextBox,设置Width=0,Enable=false,这个只是一个没有的TextBox,但有了多一个TextBox就会自动响应Button的OnClick()了。当然,如果你的Webform上已有两个或以上的TextBox,就不用加这个了。
 
后退
顶部