【发布时间】:2019-10-09 12:17:21
【问题描述】:
我有一个简单的问题,我找不到任何解决方法。我在 XAML WPF 主窗口(Visual Studio 16.1)中有一个按钮,我只需要将文本内容居中对齐。在设计器窗口上,它看起来很好,如第一张图片所示。当我运行窗口(调试或发布)时,我得到第二张图像(额外的左边 边距显示只是裁剪的产物)。
就像添加了填充一样。我已经详细搜索并尝试了很多建议,这些建议通常是在 XAML 或代码中设置 Padding 或 HorizontalContentAlignment 的某种形式,但无济于事。即使没有任何背景或边框,也没有任何效果。这是 XAML:
<Button x:Name="btRefresh" Content="Refresh"
Grid.Column="2" Grid.Row="1"
Click="btRefresh_Click"
HorizontalAlignment="Stretch"
Margin="5,0"
Background="{StaticResource ccButton1}"
BorderBrush="{StaticResource BorderColor1}"
BorderThickness="2"
FontWeight="SemiBold"
/>
我也尝试编辑默认模板,但其中没有任何会影响简单对齐的内容。除此之外,它确实在设计器中完美对齐,因此实际上没有其他属性需要根据所有文档进行设置。
我不能是唯一遇到这个的人,因为它是一个基本的按钮。
感谢您的帮助!
JCK
【问题讨论】:
-
当你创建一个新项目并实现相同的按钮时,你能复制这个问题吗?
-
下载并安装 snoop。然后,您可以查看到底发生了什么。该刷新字符串不只是出现。会有一个文本块来做这件事,我猜你有一个样式目标文本块。您可以在按钮中放置一个显式文本块并将其样式设置为 x:null。