1

我正在开发触摸屏显示器的键盘,我需要知道如何编写一个通用代码,每当任何文本框聚焦时,表单(键盘)就会打开。我知道我可以放入每个文本框的事件焦点,但我想做一个通用代码。我正在使用 WCE8 和 .net compact framework 3.5。

4

2 回答 2

2

您可以创建自己的自定义控件并覆盖该OnGotFocus功能

public partial class FocusTextBox : TextBox {
    public FocusTextBox() {}

    protected override void OnGotFocus(EventArgs e) {
        // Your code to open the keyboard here

        base.OnGotFocus(e);
    }
}
于 2018-08-24T13:42:46.120 回答
1

例如,您可以在控件中找到所有控件类型的文本框,并为它们提供带有 foreach 的单击事件

foreach(Control ctrl in panel1.Controls)
        {
            if(ctrl is TextBox)
            {
                ctrl.Click += new EventHandler(OpenSecondForm_Click); 
            }
        }

private void OpenSecondForm_Click(object sender, EventArgs e)
    {
        Form2 form = new Form2();
        form.Show();
    }

这样,每次您关注任何文本框时,它都会打开第二个表单,希望这可以帮助您。

于 2018-08-24T13:49:15.640 回答