我有一个 ListView ,当我点击一个项目时,它会调用 SelectedIndexChange 事件,在那种情况下我想将焦点设置在一个文本框上,所以我调用:
this.ActiveControl = theTextBoxControl;
我可以看到焦点瞬间切换到文本框,但事件完成后焦点立即返回到 ListView 。有什么解决办法吗?
最佳答案
您可能会创建一个标志并将其设置为 true,例如:needToFocusTextBox
。然后在ListView的onFocus事件中进行如下操作。
if (needToFocusTextBox)
this.ActiveControl = theTextBoxControl;
或者,您可以在 SlectedIndexChange 事件中分配 onFocus 处理程序。然后在处理完 onfocus 后将其删除
关于C#调用Listview的SelectedIndexChange事件中的文本框焦点失去对事件完成的关注,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5267182/