WPF:按 ALT 键时,按钮上的热键不会显示下划线

问题描述 投票:0回答:3

我有一个 WPF 应用程序,其中的按钮是通过

定义的
     <Button Command="{Binding ShowSomeDialog}">
        <AccessText>_Push me</AccessText>
     </Button>

按下 ALT 键时,按钮不会显示带下划线的“P”,但按下 ALT-P 会调用该命令。

在另一个窗口中的同一应用程序中,完全相同的标签的行为与预期一致,这意味着:按下 ALT 键时,它会在 P 上加下划线。

在热键下划线的情况下,按钮嵌套得很深。简化的层次结构可以描绘为

  1. Window
  2. syncfusion:TabControlExt
  3. syncfusion:TabItemExt
  4. UserControl
  5. syncfusion:TabControlExt
  6. syncfusion:TabItemExt
  7. UserControl
  8. Button
如果将按钮添加到 '4. 中,则热键

将带有下划线。添加到 '7 后,UserControl' 和

 不会加下划线。 
UserControl'或更深。
我找不到中间元素的任何自定义样式,尤其是 
RecognizesAccessKey

设置为

False

 的样式。
有人知道要检查什么或在哪里检查吗?

检查您是否在某处重新设置了按钮的样式 - 访问键行为很容易因样式不正确而被破坏。
wpf button keyboard-shortcuts hotkeys
3个回答
0
投票
顺便说一句,您确实尝试直接将 Content 属性设置为“_Push me”,而不使用 AccessText,不是吗?

附注

MSDN

可能会有所帮助。

使用

0
投票
,其中 X 是双精度值,并查看是否出现下划线。


如果这对某人有帮助,在 Windows 11 和 .NET Framework 4.8 中,访问键区分大小写!因此

0
投票
作为按钮或复选框的标题不适用于

ALT + o

,但适用于 
ALT + O(大写 O),即您必须实际按 ALT + SHIFT + o 才能使用助记符。 另请注意,您必须从“设置”>“辅助功能”>“键盘”打开访问键下划线功能。默认关闭。

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.