C# WPF按钮未将Unicode字符居中
我的WPF应用程序中有几个按钮,其中包含Unicode字符 即 ← 内部的按钮渲染刚刚好。。。但只有当按钮高于一定高度时!一旦按钮变得太小,它就会突然停止对中← 垂直方向,它将关闭按钮(如您所见,它仍然没有完全对中← 即使按钮更大) 将按钮的C# WPF按钮未将Unicode字符居中,c#,wpf,unicode,C#,Wpf,Unicode,我的WPF应用程序中有几个按钮,其中包含Unicode字符 即 ← 内部的按钮渲染刚刚好。。。但只有当按钮高于一定高度时!一旦按钮变得太小,它就会突然停止对中← 垂直方向,它将关闭按钮(如您所见,它仍然没有完全对中← 即使按钮更大) 将按钮的VerticalContentAlignment设置为Center没有帮助,将其设置为Stretch会导致← 当按钮变高时向上移动。在水平方向上← 一切都很好 我使用的所有unicode字符都会出现这种情况。当按钮变小时,字体变小会导致这种情况发生,反之亦
VerticalContentAlignment
设置为Center
没有帮助,将其设置为Stretch
会导致← 当按钮变高时向上移动。在水平方向上← 一切都很好
我使用的所有unicode字符都会出现这种情况。当按钮变小时,字体变小会导致这种情况发生,反之亦然
有什么我能做的吗?也许使用按钮的自定义内容模板使unicode字符变大,而不是使用大字体?unicode字符是否没有报告其标志符号或其他内容的正确高度?如果我做不到这一点,我可能会把一个unicode字符的图像塞进按钮,这将是。。。不幸。使用填充。。这应该能奏效
<Button x:Name="Backspace" Content="←" FontSize="50" Width="100" Height="50" VerticalContentAlignment="Center" Padding="0,-10,0,0"/>
请注意,高度相同。看起来你的利润给你带来了麻烦。你应该发布更多的代码对不起,我注意到箭头上方的高度也是一样的。不涉及边距,按钮位于单元格高度*和宽度*的网格中,该网格位于用户控件中,该控件位于另一个网格中,该网格也具有*单元格宽度和高度。可以通过创建空白窗口并在其中放置带有unicode字符的按钮进行测试。调整按钮的大小当按钮变小时,可以看到角色在按钮中向下移动。这似乎是默认的行为。实际上效果很好!不知道为什么我没有想到填充。当按钮变小时,它仍然会移动,但现在它会起作用。@Tranquimarmot你没有想到它,因为它只是一种简单的(某种硬编码的)解决方法。@KingKing是的,我肯定更喜欢更优雅的解决方案;填充物目前只是一种奶嘴。
<Button x:Name="Backspace" Content="←" FontSize="50" Width="100" Height="50" VerticalContentAlignment="Center" Padding="0,-10,0,0"/>