在 C#“DialPad.Designer.CS”页面中注册按键事件方法

Cha*_*kay 1 .net c# winforms

我使用 Windows 表单设计 dialerPad 表单,有一个文本框应该只接受数字而不是文本,我的问题是当我添加代码时

private void txtDialedNumber_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)
{
    //Blaah Blaah Code;
}
Run Code Online (Sandbox Code Playgroud)

但它没有在其他 DialPad.Designer.CS 页面中注册。例如以下代码注册 TextChangedEvent

this.txtDailedNumber.TextChanged += new System.EventHandler(this.txtDailedNumber_TextChanged);
Run Code Online (Sandbox Code Playgroud)

有人能帮我解决这个问题吗?

Gre*_*som 5

您永远不应该手动更改 *.designer.cs 文件。

您应该做的是打开表单的设计视图,选择对象,然后在对象属性中设置事件处理程序:

在此输入图像描述

或者,如果您想手动注册事件处理程序(而不是使用设计器),只需将其放在表单构造函数中的 InitializeComponent() 调用下即可。