【发布时间】:2009-12-08 12:46:19
【问题描述】:
我正在编写一个 C# 程序,它接收一堆参数并对数据点进行一些转换,然后将它们绘制到屏幕上。
在我的一个表单上,我有一堆文本框,我都想执行相同的 KeyPress 事件。在我只做一个 switch 语句之前,它将只接收 KeyPress 事件的发送者并将其与所有 TextBoxes 进行比较。这种方法对我来说似乎不是很有效,因为现在我有 20 多个文本框。
我想做的是找到表单上的哪个 TextBox 发送了 KeyPress 事件并从该 TextBox 获取更多信息(即它的 Text 值等)。这将省去我必须与发件人进行巨大切换以查看它也相等的 TextBox 的麻烦。但我刚刚经历了最艰难的时期。
我查看了 System.Windows.Controls 和 System.Windows.Forms 类,看看是否能找到任何对我有帮助的东西。我正在寻找的是能让我看到哪个控件有焦点的东西。也许这就是我应该一直在寻找的东西?我还查看了我可以在 KeyPress 事件中对 sender 做什么,看看我是否可以弄清楚 TextBox 引发了事件,但仍然没有运气。
在这一点上,我觉得自己更加困惑了。任何帮助将不胜感激。
【问题讨论】: