我尝试从右下角放置一个10px的按钮。在Designer中,按钮距离角落约10px,但不在程序中(距离角落只有1px,看起来有点不好)。这是WPF中的错误吗?
<Window x:Class="wpftest.test"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:wpftest" mc:Ignorable="d" Title="test"
Height="300" Width="300">
<Grid>
<Button x:Name="button" Content="Button" HorizontalAlignment="Left" Margin="207,239,0,0" VerticalAlignment="Top" Width="75" RenderTransformOrigin="-0.133,-0.75"/>
</Grid>
</Window>
答案 0 :(得分:3)
您正在根据保证金设置按钮。尝试将按钮更改为下方。
<Button x:Name="button" Content="Button" HorizontalAlignment="Right" VerticalAlignment="Bottom" Width="75" Margin="10"/>
答案 1 :(得分:3)
如果您打算使用WPF或UWP,您肯定希望能够理解xaml标记。根据我的经验,拖放设计师很少能提供你真正想要的东西。但是,设计师和属性会准确地告诉您发生了什么。您是否看到如果在运行时最大化窗口会发生什么?按钮将无法靠近底部右下角。根据定义,它将始终是左侧207px和顶部239px。请参阅下面的快速说明。
如果要求按钮的右边缘为10px,底部为10px,则可以通过单击&#34;链接&#34;来定义按钮。为了使预期的边缘成为参考边缘的约束(点击它们切换它们,所以&#34;关闭&#34;左边和顶部),并调整值。您可能想要摆脱设计师为您提供的变换。
答案 2 :(得分:0)
使用边距时,始终首选最近边。 这里的“右侧”为HorizontalAlignment,“Bottom Side”为VerticalAlignment为最近。