Как отобразить кнопки по умолчанию в настраиваемой строке заголовка WPF с помощью WindowChrome - PullRequest
0 голосов
/ 05 августа 2020

Я слежу за статьей Restyle Your Window , где автор показывает кнопку максимизации в строке заголовка как символ #. Но я хотел бы показать ему кнопку по умолчанию, как показано ниже:

enter image description here

Currently my customized title bar looks like the following:

image

1 Ответ

0 голосов
/ 05 августа 2020

Вы не можете отображать кнопки по умолчанию, когда определяете собственный стиль окна chrome, но вы можете легко настроить свои собственные кнопки так, чтобы они выглядели как кнопки по умолчанию.

Используйте семейство шрифтов Segoe MDL2 Assets как I предлагается здесь :

<Button x:Name="btnMinimize" Content="&#xE949;"
                Padding="0 1 1 0"
                VerticalContentAlignment="Bottom"
                Click="MinimizeClick" DockPanel.Dock="Right"
                WindowChrome.IsHitTestVisibleInChrome="True">
    <Button.Template>
        <ControlTemplate TargetType="Button">
            <Grid x:Name="LayoutRoot" Background="Transparent" Width="44" Height="30">
                <TextBlock x:Name="txt" Text="{TemplateBinding Content}"
                                   FontFamily="Segoe MDL2 Assets"
                                   FontSize="10" 
                                   HorizontalAlignment="Center" VerticalAlignment="Center"
                                   RenderOptions.ClearTypeHint="Auto"
                                   TextOptions.TextRenderingMode="Aliased"
                                   TextOptions.TextFormattingMode="Display"
                                   Margin="{TemplateBinding Padding}"/>
            </Grid>
            <ControlTemplate.Triggers>
                <Trigger Property="IsMouseOver" Value="True">
                    <Setter TargetName="LayoutRoot" Property="Background" Value="#E5E5E5"/>
                    <Setter TargetName="txt" Property="Foreground" Value="#000000"/>
                </Trigger>
            </ControlTemplate.Triggers>
        </ControlTemplate>
    </Button.Template>
</Button>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...