2010-10-07 45 views
1

我有winform按钮,当您加载窗体时,会选择某个按钮。我选择的意思是,如果按下“enter”,则按下按钮。自动选择按钮(如何关闭它?)

我该如何改变我的按钮,使他们不再这样做?

+0

这不是“某些按钮”..它的“某个按钮”。 :) – Nayan 2010-10-07 18:19:17

+0

让我修复 – sooprise 2010-10-07 18:30:03

回答

0

Element.Select()是为我工作的。

1

您需要设置acceptbutton形式。

+0

AcceptButton设置为(无),是否还有其他可能导致此问题的东西? – sooprise 2010-10-07 18:11:46

+0

嗯,你是否在使用任何复合或第三方控件。 – rerun 2010-10-07 18:12:35

+0

我只是在Visual Studio中从头开始构建WinForms。是的,奇怪的是,如果我设置AcceptButton,我可以看到它在我的编辑器中设置(按钮被选中),当我将它设置回(none)时没有选择按钮,但是当我运行我的程序时,按钮是当他们不应该被选中时... – sooprise 2010-10-07 18:15:21

3

你的Tab键顺序在其中您在窗体上添加控件的顺序设置。如果您可以按下/选择/编辑的第一个控件是正在按下的按钮,则表单加载时焦点将自动置于该按钮上。

您可以通过设置焦点其他一些控制作弊(也许这是不可见的?!提示*提示!),以避免按钮,在第一选择。

而且还确保THT按钮不是形式的AcceptButton。

+0

更改TabIndex不会帮助我的问题,我会尝试手动设置焦点,谢谢! – sooprise 2010-10-07 18:19:34

+0

TabIndex是一件复杂的事情。如果您尝试在属性中手动编辑它,即使这样也不能保证它应该工作。最好的方法是在Visual Studio的“编辑”菜单中启用“制表顺序”,然后按照您希望控制的顺序开始点击。 – Nayan 2010-10-07 18:22:40

1

两个概念已经被拿烟并重新运行谈到:

1)的AcceptButton 2)Tab顺序

还有一个我想补充,然后试图解释的三件事情是如何关联:

3)焦点

焦点意味着子控件具有“键盘焦点”。当控件拥有焦点时,它会接收键盘输入并可以对其进行响应。通过鼠标点击控件或使用Tab键来改变焦点。

Tab顺序是在其中控制被按下Tab键时接收焦点的顺序。它也决定了最初控制的焦点(第一个按标签顺序)。

AcceptButton概念有点杂乱。如果表单的AcceptButton属性设置为按钮控件,则当用户按下Enter键时,该按钮被按下,而焦点位于任何不处理回车键本身的控件上。通常,窗体上的“确定”按钮被设置为AcceptButton,以便用户可以输入数据并按Enter键作为按下“确定”按钮的快捷方式。

+0

heheh ..我提到的焦点太)=)) – Nayan 2010-10-08 04:46:41

+0

你知道..我的意思是要把每一个绑定到他们如何影响每个控件的选定外观,但我完全没有完成。由于OP似乎已经发布了自己的答案,所以我不打算完成它。 – Tergiver 2010-10-08 12:56:31