我正在开发 WPF 应用程序,其中一项要求是在按下 Alt 键时在按钮上显示快捷键提示。它需要与按 Alt 键时功能区/菜单的工作方式相同,它会显示提示。我正在使用 MVVM,它需要在多个地方实现,而不仅仅是一个按钮,所以需要一个通用的解决方案(可能是行为或其他东西)。
有没有办法实现这个?任何帮助,将不胜感激。
我正在开发 WPF 应用程序,其中一项要求是在按下 Alt 键时在按钮上显示快捷键提示。它需要与按 Alt 键时功能区/菜单的工作方式相同,它会显示提示。我正在使用 MVVM,它需要在多个地方实现,而不仅仅是一个按钮,所以需要一个通用的解决方案(可能是行为或其他东西)。
有没有办法实现这个?任何帮助,将不胜感激。
不知道您的容器元素功能区或菜单是什么(应该适用于任何),例如让我们说它的简单网格。这是基本指南:
1) 在您的 ViewModel 中创建一个名为 HintVisible 的 bool 类型的道具。
2)您的包含元素(网格)将包含提示元素(例如按钮),这些元素在需要提示时将可见。他们的 Visibility 属性应该绑定到 VM 的 HintVisible 属性
<Button Visibility=”{Binding HintVisible , Converter={StaticResource BoolToVisibilityConverter} }”>Hint</Button>
3)你的包含元素应该有
<Grid>
<Grid.InputBindings>
<KeyBinding Command="{Binding ToggleHintCommand}" Key="LeftAlt"/>
</Grid.InputBindings>
<!-- Elements-->
</Grid>
4) 你的虚拟机的 ToggleHintCommand 应该切换 HintVisible 属性