在winform里面有两个textbox name分别为txt_1,txt_2,请问可不可以通过鼠标所在的Focus来获得textbox控件的name,进而操作控件

解决方案 »

  1.   

    你可以访问Form的ActiveControl属性。看是否是Textbox。不过这和鼠标是否悬停无关,可能是键盘切换的焦点。这是获得激活控件的。
      

  2.   

    TextBox tx = this.ActiveControl as TextBox;
    if(tx == null) return;
    tx.Name就是你要的
      

  3.   

    我的需求是这样的,
    如图片所示,两个texbox,再加上简单的控件式模拟键盘,现在我想实现的是可以自由切换输入,但是由于模拟键盘是用bottom做的所以点击的时候会失去焦点,现在想通过获取光标所在位置得到textbox然后再执行
     SendKeys.Send("7");
              System.Threading.Thread.Sleep(100);
              SendKeys.Flush();
    来实现模拟键盘输入
      

  4.   

    恩,我最后的解决方案是通过textbox 的才click时间,来获得当前的活动的textbox的name,谢谢各位了
      

  5.   

    textbox只是一种,通用的是这样的
    Control conName = this.ActiveControl;
    return conName.Name