问题描述
publicvoidtextbox_KeyDown(objectsender,KeyEventArgse){if(e.KeyCode==Keys.Enter){listForm.Visible=false;}if(e.KeyValue==40){//listForm.Focus();listForm.Activate();//listForm.listBox.Focus();//listForm.listBox.SelectedIndex=listForm.listBox.SelectedIndex++;//listForm.listBox.Focus();}}
就是我在主窗体中窗体了另外一个窗体,主窗体中有一个Textbox当这个TextBox被按下方向下键时,我让另外一个窗体获得集点,但是不管我怎么试,用什么方法另外的窗体都获取不了焦点,只会一闪而过。。。。但手动去点击的时候又正常。。。。
解决方案
解决方案二:
你查看一下,是不是Active之后窗体被showdialog()之类的方法占据了
解决方案三:
listForm.Show();
解决方案四:
有点像编程语言自动完成功能你不仅要设置Form为焦点,顺便也设Form中的控件为焦点,当然首先要显示FORM网络搜搜语法提示自动完成,输入法窗口等关键字,看看
解决方案五:
你在keydown里设置了另外一个窗体获得焦点,那么在keyup的时候,焦点又回到了输入文本的窗体中你应该换个事件,确定输入完成之后,再执行其他逻辑
时间: 2024-10-03 05:35:43