WPF,这个对齐方式,帮我弄迷糊了
<Button HorizontalContentAlignment="Left" Margin="100,52,0,0" VerticalAlignment="Top" Width="194" Height="105">
<Button Content="熊俊" Height="55" Width="93" HorizontalAlignment="Center"/>
</Button>
两个问题:
1:
外部Button设置的内容对齐方式Left,内部Button设置与父容器的水平对方为Center,结果却是靠左的,以哪个为准呢?
2:如果改成下面这样的代码:
<Button Margin="100,52,0,0" VerticalAlignment="Top" Width="194" Height="105">
<Button Content="熊俊" Height="55" Width="93" HorizontalAlignment="Left"/>
</Button>
HorizontalContentAlignment不是默认值是Left的吗,那外部Button的内容对齐方式是Left,内部Button与父元素的水平对齐方式也是Left,那为什么结果却没有靠左呢?如下图
------解决方案--------------------1.外部设置HorizontalContentAlignment="Left",因为你的外部Content赋了一个Button对象,所以内部这个Button左对齐。
内部设置HorizontalContentAlignment="Center",因为你的内部Content赋值"熊俊",所以"熊俊"剧中对齐。
2.HorizontalContentAlignment的默认值是Center
*请注意HorizontalContentAlignment和HorizontalAlignment是2个不同的属性!
------解决方案--------------------
你看看button的模板就理解了,Content是放在ContentPresenter中,你设置Content元素的HorizontalAlignment只是在ContentPresenter内部的位置。而ContentPresenter在什么位置是由Button决定的。
------解决方案--------------------