回 帖 发 新 帖 刷新版面

主题:[原创].net中如何增加TextBox的KeyDown事件?

有TextBox_DH和TextBox_XM 两个TextBox,希望TextBox_DH中有回车按下,TextBox_XM就显示Enter,为什么这样不行。

private void TextBox_DH_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e)
        {if(e.KeyCode == Keys.Enter)
                   TextBox_XM.Text="Enter";}



是不是因为TextBox本身不提供KeyDown事件,需要自己手动增加,可如何增加这一事件呢?看InitializeComponent()中并没有KeyDown事件。

#region Web 窗体设计器生成的代码
        override protected void OnInit(EventArgs e)
        {
            //
            // CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
            //
            InitializeComponent();
            base.OnInit(e);
        }
        
        /// <summary>
        /// 设计器支持所需的方法 - 不要使用代码编辑器修改
        /// 此方法的内容。
        /// </summary>
        private void InitializeComponent()
        {               
            this.Button1.Click += new System.EventHandler(this.Button1_Click);
            this.Button_QR.Click += new System.EventHandler(this.Button_QR_Click);
            this.Button_CX.Click += new System.EventHandler(this.Button_CX_Click);
            this.Load += new System.EventHandler(this.Page_Load);

        }
        #endregion

回复列表 (共3个回复)

沙发

我在  private void InitializeComponent() 里面手动添加
this.TextBox_DH.KeyDown +=new System.Windows.Forms.KeyEventHandler(this.TextBox_DH_KeyDown);



可提示:D:\wwwroot\Hello\Test\LTG01.aspx.cs(59): “System.Web.UI.WebControls.TextBox”并不包含对“KeyDown”的定义

D:\wwwroot\Hello\Test\LTG01.aspx.cs(53): 类型“System.Web.UI.WebControls.TextBox”没有名为“KeyDown”的事件。


板凳

这个要在客户端的脚本中写

3 楼

那请问怎么写,要是客户端不支持脚本怎么办???

说白了,我用的是Symbol的手持设备,想用Windows CE4.1自带的浏览器,实现网页中,在表单中如果有多个输入框,在第一个输入完成后,回车,把焦点置于下一输入框,而不是表单提交,就这么简单,我也知道在台式机中,很简单,用个脚本就行,可用在手持设备上,就困难了,不知道有谁碰到这问题。急啊,救命啊。

我来回复

您尚未登录,请登录后再回复。点此登录或注册