由于图为:删除亮点
我想每次点击后删除亮点,因为我已经设置的AcceptButton和ACTIVECONTROL到“等于”这个节目 我的按钮当我按下在键盘上输入时,想要发生AcceptButton的操作,而不是输入突出显示的按钮文本。任何想法? 谢谢。
由于图为:删除亮点
我想每次点击后删除亮点,因为我已经设置的AcceptButton和ACTIVECONTROL到“等于”这个节目 我的按钮当我按下在键盘上输入时,想要发生AcceptButton的操作,而不是输入突出显示的按钮文本。任何想法? 谢谢。
我认为这个问题是重复的How do I prevent WPF buttons from remaining highlighted after being clicked?
这里是解决方案:
发生的事情是该按钮接受输入焦点被点击 后,就像任何其他控件在点击它时一样。
并且Windows表示控件具有输入焦点 (至少在Aero主题下)的方式具有微妙的蓝色突出显示。
对于一个按钮控制特别是当它有输入焦点时, 只需按下输入键会“推”那个按钮。 这就是为什么保持高亮度非常重要,以便用户知道应该期待什么。
更好的解决方案是在用户点击按钮后立即将焦点设置到您的 窗口中的不同控件。这样, 它不会自动突出显示,并且当用户按输入 键时,将不会自动触发 。 (这是真正的可用性问题,即使您还不知道,也可以通过 来解决问题。当用户实际尝试使用 来键入内容时,没有什么比无意间点击按钮更容易混淆了。 )
您可以防止以往通过设置其
Focusable
property为false共 获得焦点,但我会很 多建议对这个按钮。完成此操作后,用户无法仅通过键盘“按下”按钮,就不会有任何方法。 精心设计的应用程序应始终可由 或不愿使用或无法使用鼠标的用户访问。
既然你“想要的AcceptButton
的操作发生,而不是输入的高亮显示的按钮上的文字时,我的按键键盘上输入。”, 一种解决方案是为每个按钮的点击事件处理重点关注=。
谷歌“winforms控件集焦点”的代码细节。
这将保持无障碍:键盘的用户才能标签到所需的按钮,按下回车到“点击”的按钮。然后你点击处理程序将给予重点=,所以这将是清楚的是另一输入将执行=行动。
这也使得它清楚地任何用户,他们可以按随时进入,得到=。
另一方面,用户不断看到突出显示=可能会“令人不安”。将需要用户测试...
到目前为止的代码? SO不是代码写入服务。 – techydesigner
@techydesigner你的代码是什么意思?我创建了这个程序,只是想知道删除高亮显示的方法 – user6670219
当然代码中有些东西会影响它。这可能是一个小故障,但至少有一些特定于该按钮的代码可能对其他用户有所帮助。 – techydesigner