无法在stackpanel中对齐标签

时间:2016-08-31 07:07:47

标签: wpf

我不是wpf专家,所以问题可能比看上去简单。无论如何,我用这种结构制作了一个堆叠面板:

 <StackPanel Orientation="Horizontal">
          <Label Content="Match" FontWeight="Bold"/>
          <Label Content="Foo" HorizontalAlignment="Right"/>
</StackPanel>

如何看待我将方向设置为horizontal,这样我就可以将两个标签放在同一行。我还需要将第二个标签“Foo”对齐到右边。我尝试设置HorizontalAlignment属性,但标签卡在同一位置。我可以做些什么来解决这个问题?

2 个答案:

答案 0 :(得分:2)

最简单的答案是你不能。

使用Stackpanel将东西堆叠起来。

您可以垂直水平进行,也可以将堆叠面板向右或向左对齐,但不能对齐其中的项目。

您可以改用Grid或其他容器。

<Grid>
      <Label Content="Match" FontWeight="Bold" HorizontalAlignment="Left"/>
      <Label Content="Foo" HorizontalAlignment="Right"/>
</Grid>

答案 1 :(得分:1)

StackPanel不支持子控件的单独对齐。但是,您可以设置整个堆栈面板的对齐方式。但事实并非如此。

您可以做的是将标签放在Uniform Grid 1 row2 columns中。

<UniformGrid Rows="1" Columns="2">
      <Label Content="Match" FontWeight="Bold"/>
      <Label Content="Foo" HorizontalAlignment="Right"/>
</UniformGrid>