Не могу увидеть _ (подчеркивание) в содержимом WPF

Очень простой вопрос:

Почему я не могу увидеть _ (подчеркивание) в содержимом WPF?

Например, содержимое

<Label Content="test_t" Name="label2"  />

отображается как "testt" (с не показанным подчеркиванием).

27
задан Wai Ha Lee 30 September 2015 в 13:59
поделиться

3 ответа

Метки поддерживают мнемонику (то есть вы можете использовать ctrl + (ключ) , чтобы придать им фокус). Вы определяете мнемонический ключ, используя подчеркивание.

http://www.charlespetzold.com/blog/2006/01/061004.html

Если вы хотите увидеть подчеркивания, замените одиночные подчеркивания на двойные подчеркивания.

34
ответ дан 28 November 2019 в 05:11
поделиться

Я знаю, что опоздал на вечеринку, но я считаю, что если у вас нет ярлыка, связанного с TextBox, вам следует вместо этого использовать TextBlock.

Изменение вашего элемента управления на TextBlock решает эту проблему, поскольку только Label имеет мнемоническую поддержку

3
ответ дан 28 November 2019 в 05:11
поделиться

Этот стиль решает вашу проблему:

<Style x:Key="{x:Type Label}"
   TargetType="{x:Type Label}">
<Setter Property="Template">
    <Setter.Value>
        <ControlTemplate TargetType="{x:Type Label}">
            <Border Background="{TemplateBinding Background}"
                    BorderThickness="{TemplateBinding BorderThickness}"
                    BorderBrush="{TemplateBinding BorderBrush}"
                    Padding="{TemplateBinding Padding}"
                    SnapsToDevicePixels="true">
                <ContentPresenter HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
                                  VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
                                  RecognizesAccessKey="False"
                                  SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
            </Border>
            <ControlTemplate.Triggers>
                <Trigger Property="IsEnabled"
                         Value="false">
                    <Setter Property="Foreground"
                            Value="{DynamicResource {x:Static SystemColors.GrayTextBrushKey}}" />
                </Trigger>
            </ControlTemplate.Triggers>
        </ControlTemplate>
    </Setter.Value>
</Setter>

3
ответ дан 28 November 2019 в 05:11
поделиться
Другие вопросы по тегам:

Похожие вопросы: