样式中的垂直对齐

时间:2018-12-26 18:56:58

标签: c# wpf

我的风格很简单。后面的代码什么也不做(暂时)。

<Style TargetType="{x:Type xxx:Button}">
    <Setter Property="Template">
        <Setter.Value>
            <ControlTemplate TargetType="{x:Type fluent:Button}">
                <Border BorderBrush="Black" BorderThickness="1,1,1,1">
                    <ContentPresenter HorizontalAlignment="Center" VerticalAlignment="Center" />
                </Border>
            </ControlTemplate>
        </Setter.Value>
    </Setter>
</Style>

,然后在MainWindow中将其用作:

<xxx:Button Content="1" FontSize="46" />

这将导致文本不垂直居中。我对此提出了一个不同的问题,答案是,这归因于字体缩放的方式以及它们如何以不同的方式缩放。一切都很好,但是如何在不知道内容为边界的情况下将其居中放置在边框中呢?在上面的示例中,它只是文本,但是可以是图标或按钮等。这些似乎都正确居中...有一种技巧可以使它与文本一起使用,因为每种字体都有不同的“软键系数” ?

0 个答案:

没有答案