【发布时间】:2020-02-19 17:29:22
【问题描述】:
我在 wpf 中将 Margin="3" 和 Padding="5,1,5,1" 与我的按钮一起使用。我意识到如果我设置这样的快捷键:
<Button Content="_Decide types" Command="{Binding DecideTypesCommand}"
ToolTip="Select rows before pressing this button!"/>
然后这个按钮会增加。似乎 _ 使用了一些额外的填充。我能以某种方式控制它吗?
边距和填充在 App.xaml 中设置。例如。 “创建类型提示”按钮正确使用此设置。 “第一个”按钮明显大于“创建类型提示”按钮。如果我从“第一个”按钮中删除快捷方式,那么它的大小将是正常的。
更新 2: 在这里您可以看到一个 WrapPanel,在其下方是 App.xaml 中的相应样式。您可以在第二个图中看到第一个按钮更大,唯一的区别是 _。我试图在一个空项目中重新创建问题,但是两个按钮的大小相同。
<WrapPanel>
<Button Content="_Decide types"/>
<Button Content="Decide types"/>
</WrapPanel>
<Style TargetType="Button">
<Setter Property="Margin" Value="3"/>
<Setter Property="Padding" Value="5,1"/>
<Setter Property="VerticalAlignment" Value="Center"/>
</Style>
【问题讨论】:
-
请更具体地说明到底出了什么问题,并且请使用重现问题的代码更新您的问题。仅使用您发布的 XAML,我看不出使用
_的按钮和不使用的按钮之间有任何重大区别。 -
我也看不到任何东西。您说您设置了边距和填充,但您的代码没有显示这一点。按钮大小会导致什么问题?窗口的其余部分有一些错误安排?
-
如果您在谈论第一行,看起来您的文本框元素上有一些边距,导致整行拉伸。删除边距或设置按钮 VerticalAlginment=Center 应该会有所帮助。
-
@ghord 我已经尝试过 VerticalAlginment=Center,请参阅更新 2
-
使用 Live Visual Tree 查看两个按钮的构造方式是否有所不同。也许一个是用
TextBlock内置的