gpt4 book ai didi

c# - 如何在带有自定义 ContentTemplate 的 WPF 按钮上使用 accesskey?

转载 作者:太空狗 更新时间:2023-10-29 22:54:20 27 4
gpt4 key购买 nike

场景:

目前我有这个 XAML 代码:

<Button Content="_Cancel" IsCancel="True" Command="{Binding Path=CancelCommand}" Margin="5">
<Button.ContentTemplate>
<DataTemplate>
<TextBlock Margin="10,0,10,0" />
</DataTemplate>
</Button.ContentTemplate>
</Button>

显然,访问键(“c”键:_Cancel)不能与 TextBlock 结合使用。我实际上认为 TextBlock 应该是一个 ContentPresenter(如下),但这每次都会使我的 Visual Studio 2010 实例崩溃。

<ContentPresenter Margin="10,0,10,0" RecognizesAccessKey="True" />

问题:

  • 在带有 ContentTemplate 的 WPF 按钮上使用访问键的最佳解决方案是什么?

提前致谢!

最佳答案

代替 TextBlock 使用 AccessText 因此:

<Button Content="_Cancel" IsCancel="True" Command="{Binding Path=CancelCommand}" Margin="5">
<Button.ContentTemplate>
<DataTemplate>
<AccessText Margin="10,0,10,0" Text="{Binding}"/>
</DataTemplate>
</Button.ContentTemplate>
</Button>

附言。 ContentPresenter 应该在 ControlTemplate 中使用,以根据 DataTemplate 显示内容。如果您在 DataTemplate 中使用它,它会导致无限递归,因为 DataTemplate 会被一遍又一遍地调用。

关于c# - 如何在带有自定义 ContentTemplate 的 WPF 按钮上使用 accesskey?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7416303/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com