2016-08-03 89 views
0

由于图为:删除亮点

https://drive.google.com/file/d/0B4XV2HrbrpDZX0xnZ1o1SHhiWm8/view?usp=drivesdk

我想每次点击后删除亮点,因为我已经设置的AcceptButton和ACTIVECONTROL到“等于”这个节目 我的按钮当我按下在键盘上输入时,想要发生AcceptButton的操作,而不是输入突出显示的按钮文本。任何想法? 谢谢。

+0

到目前为止的代码? SO不是代码写入服务。 – techydesigner

+0

@techydesigner你的代码是什么意思?我创建了这个程序,只是想知道删除高亮显示的方法 – user6670219

+0

当然代码中有些东西会影响它。这可能是一个小故障,但至少有一些特定于该按钮的代码可能对其他用户有所帮助。 – techydesigner

回答

0

我认为这个问题是重复的How do I prevent WPF buttons from remaining highlighted after being clicked?


这里是解决方案:

发生的事情是该按钮接受输入焦点被点击 后,就像任何其他控件在点击它时一样。

并且Windows表示控件具有输入焦点 (至少在Aero主题下)的方式具有微妙的蓝色突出显示。

对于一个按钮控制特别是当它有输入焦点时, 只需按下输入键会“推”那个按钮。 这就是为什么保持高亮度非常重要,以便用户知道应该期待什么。

更好的解决方案是在用户点击按钮后立即将焦点设置到您的 窗口中的不同控件。这样, 它不会自动突出显示,并且当用户按输入 键时,将不会自动触发 。 (这是真正的可用性问题,即使您还不知道,也可以通过 来解决问题。当用户实际尝试使用 来键入内容时,没有什么比无意间点击按钮更容易混淆了。 )

可以防止以往通过设置其Focusable property为false共 获得焦点,但我会很 多建议对这个按钮。完成此操作后,用户无法仅通过键盘“按下”按钮,就不会有任何方法。 精心设计的应用程序应始终可由 或不愿使用或无法使用鼠标的用户访问。

0

既然你“想要的AcceptButton的操作发生,而不是输入的高亮显示的按钮上的文字时,我的按键键盘上输入”, 一种解决方案是为每个按钮的点击事件处理重点关注=

谷歌“winforms控件集焦点”的代码细节。

这将保持无障碍:键盘的用户才能标签到所需的按钮,按下回车“点击”的按钮。然后你点击处理程序将给予重点=,所以这将是清楚的是另一输入将执行=行动。

这也使得它清楚地任何用户,他们可以按随时进入,得到=

另一方面,用户不断看到突出显示=可能会“令人不安”。将需要用户测试...