如何按向上键访问文本框

本文关键字:访问 文本 何按 | 更新日期: 2023-09-27 18:06:50

所以我在一个c#项目(winforms(中工作,所以我的项目中有很多文本框,当我按下时,一个特定的文本框,比如textbox1增加他的值,我已经使用了事件OnKeyUp,但问题是我有很多文本盒,所以我必须点击这个TextBox1来开始操作,所以,如果有人有任何想法,我将不胜感激。

这是我的代码:

//Action speed up
private void TxBoxKeyUp_KeyUp(object sender, KeyEventArgs e)
{
    TxBoxKeyUp.Text = (speed+=5).ToString();
    LbSpeed.Text = TxBoxKeyUp.Text;
}

如何按向上键访问文本框

如果要为窗体上的每个控件处理KeyUp事件,则可以将form.KeyPreview属性设置为True。然后为表单添加KeyUp事件处理程序,并在该事件中更新文本框的内容

private void Form1_KeyUp(object sender, KeyEventArgs e)
{
    TxBoxKeyUp.Text = (speed+=5).ToString();
    LbSpeed.Text = TxBoxKeyUp.Text;
}

如果您的意图是捕捉每个KeyUp,无论事件触发时哪个控件是焦点控件,这都可以很好地工作。如果仅当控件是TextBox时才需要获取关键帧,则解决方案会更加复杂。你需要一个像这个问题中解释的方法来获得当前关注的控件,然后检查它是否是一个文本框。

您可以将文本框定义为数组,然后使用委托。

让我们假设您有一个按键事件TxBoxKeyUp_keyup和一组文本框txtarr

foreach (TextBox txt in txtarr)
    txt.KeyUp += new KeyEventHandler(TxBoxKeyUp_KeyUp);

因此,您可以用一个函数处理所有的文本框keyup事件。