none
button(按钮)单击向TextBox(编辑框)模拟按键。 SendKeys.Send("1").按钮会获取焦点。导致编辑框不能接收模拟按键。 RRS feed

  • 问题

  • button(按钮)单击向TextBox(编辑框)模拟按键。 SendKeys.Send("1").按钮会获取焦点。导致编辑框不能接收模拟按键。如何解决。感谢。
    2016年4月22日 10:57

全部回复

  • Hi 可推,

    这个很好解决,在SendKey.Send 前调用textbox的focus方法就行了,范例:

            private void Button_Click(object sender, EventArgs e)
            {
                textbox.Focus();//文本框获取焦点
                SendKeys.Send("1");
            }
    

    Regards,

    Moonlight


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.


    2016年4月25日 2:34
  • 嘿。方法不错。请问下窗体大于两个以上的TextBox的控件如何处理焦点。
    2016年5月7日 14:46
  • Hi 可推,

    加个临时变量并调用文本框Leave事件将控件存入,范例:

            Control currControl = null;
            //绑定Leave事件
            textbox1.Leave += (obj, arg) => { currControl = obj as TextBox; }//或者直接写个方法给所有需要操作的文本框绑定
            //textbox2.Leave += (obj, arg) => { currControl = obj as TextBox; }
    
            private void button1_Click(object sender, EventArgs e)
            {
                currControl.Focus();
                SendKeys.Send(“1”);
                currControl = null;//清理变量
            }

    Regards,

    Moonlight


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.



    2016年5月19日 6:31
  • 哈。明白了。感谢。
    2016年5月26日 16:45