gpt4 book ai didi

c# - 如何使 KeyPress 事件处理程序可用于所有表单?

转载 作者:太空宇宙 更新时间:2023-11-03 22:23:36 25 4
gpt4 key购买 nike

我已经创建了一个 KeyPress 事件处理程序,它可以防止在任何订阅输入控件中输入除数字、小数和退格键以外的任何内容。问题是处理程序只对创建它的表单可用。不是将事件处理程序复制到每个表单,而是有一种方法可以使其成为全局的 - 这样任何表单上的任何输入控件的按键事件都可以订阅它。

谢谢。

最佳答案

另一个更面向对象的解决方案是从 TextBox 控件继承并覆盖 KeyPress 事件,创建您自己的自定义类型的 TextBox。

class NumericTextBox : System.Windows.Forms.TextBox
{
protected override void OnKeyPress(System.Windows.Forms.KeyPressEventArgs e)
{
base.OnKeyPress(e);

if (true /* insert your conditions */)
e.Handled = true;
}
}

然后在需要的地方使用此控件代替常规的 TextBox 控件。

关于c# - 如何使 KeyPress 事件处理程序可用于所有表单?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2231340/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com