控件获取焦点问题(C#)

在对话框中有很多控件,默认焦点在Next按钮上,但是我想打开对话框后焦点在ListView上面,所以在对话框的初始化中调用ListView的Focus()方法,不过不起作... 在对话框中有很多控件,默认焦点在Next按钮上,但是我想打开对话框后焦点在ListView上面,所以在对话框的初始化中调用ListView的Focus()方法,不过不起作用,请各位大侠帮帮忙,怎么才能让焦点转移到ListView上来!
下面几位的方法我都试了,还是不行,焦点一直在Button上面。

this.listViewLanguages.Focus();
bool focus = listViewLanguages.Focused;

上面两句代码放的地方不同,focus值也不同,这是什么原因啊?这两句代码是挨着的!
展开
 我来答
暴洛藩飞驰
2019-06-27 · TA获得超过1085个赞
知道小有建树答主
回答量:1245
采纳率:100%
帮助的人:5.4万
展开全部
代码本身没问题,如果把代码放在按钮里执行能够达到效果,现在无效应该是执行顺序问题。
在窗口启动时,会根据每个空间的tab值把焦点置于tab值最小的控件上,这个过程如果在form_load事件之后,控制焦点的代码就白做了。我试了一下,把代码放在form_activated代码里就可以了,应该是激活事件比较靠后吧。
wewewe7
2008-12-04 · TA获得超过180个赞
知道小有建树答主
回答量:560
采纳率:0%
帮助的人:328万
展开全部
ListView.selectedindex=0;
ListView.Focus();

方法是没错,错就错在过程步骤上了
肯定是在ListView.Focus(); 之后又执行别的内容了
建议你用断点跟一下程序,看看最后执行了什么,在最后再ListView.Focus();

因为焦点这个东西……实在是乱跑……你还是在程序运行后在把焦点设置为ListView
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yuvenken
2008-12-04 · TA获得超过902个赞
知道小有建树答主
回答量:338
采纳率:0%
帮助的人:413万
展开全部
可以设定控件的TabIndex属性值为0
就成为默认控件了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
sdlyyc
2008-12-04 · 超过40用户采纳过TA的回答
知道答主
回答量:120
采纳率:0%
帮助的人:97.4万
展开全部
ListView1.TopItem.Selected = True;
ListView1.Select() ;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式