如何按向上键访问文本框
本文关键字:访问 文本 何按 | 更新日期: 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事件。