我Label.Content在WPF中不显示第一次出现的"_"字符.为什么?
<Window x:Class="WpfApplication3.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="148" Width="211">
<Grid>
<Label Content="L_abel" Height="28" HorizontalAlignment="Left" Margin="37,31,0,0" Name="label1" VerticalAlignment="Top" />
</Grid>
</Window>
Run Code Online (Sandbox Code Playgroud)

设置时Label.Content ="L__abel":

项目中没有其他代码.
Joe*_*oey 49
_在WPF中用于表示访问键,即您可以按下Alt以提供焦点或调用UI元素的键.这类似于&Windows API和Windows窗体中的使用方式.由于标签旨在用作另一个控件的标签(例如,用于描述文本框),因此非常期待这一点.a按下时,您应该在示例中看到下划线Alt.
从文档:
要设置访问密钥,请在应该是访问密钥的字符前添加下划线.如果您的内容有多个下划线字符,则只将第一个字符转换为访问密钥; 其他下划线显示为普通文本.如果要转换为访问键的下划线不是第一个下划线,则对于要转换的下划线之前的任何下划线,请使用两个连续的下划线.例如,以下代码包含访问键并显示为_HelloWorld:
Run Code Online (Sandbox Code Playgroud)<Label>__Hello_World</Label>由于H之前的下划线是double,因此W键将作为访问键注册.
我想如果你既不需要也不想要Label提供的功能,你可以使用TextBlock.
在WPF中,有一个名为RecognizesAccessKey的属性,尝试将其更改为false。如果使用RadioButton,请注意后面还有标签,并且在RadioButton模板中要禁用访问键识别,必须RecognizesAccessKey="False"在template上进行设置ContentPresenter。然后将其禁用,或者将标签替换为我现在不记得的其他内容。
小智 5
最简单的解决方法是:
更改
<Label Content="L_abel" Height="28" HorizontalAlignment="Left" Margin="37,31,0,0" Name="label1" VerticalAlignment="Top" />
Run Code Online (Sandbox Code Playgroud)
至
<Label Height="28" HorizontalAlignment="Left" Margin="37,31,0,0" Name="label1" VerticalAlignment="Top">
<TextBlock Text="L_abel"/>
</Label>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
19015 次 |
| 最近记录: |