Stackpanel布局

时间:2013-11-30 10:08:13

标签: c# wpf stackpanel

我有Button的StackPanel内容:

<Button Width="180" Height="55">
   <StackPanel Orientation="Vertical">
      <TextBlock Text="{Binding Item.Quantity}"/>
      <TextBlock Text="{Binding Item.ItemName}"/>
      <TextBlock Text="{Binding Item.ItemSpecification/>
   </StackPanel>
</Button>

我想要做的是将3个TextBlock放置为:

http://alrakiza.ly/demo/stackpanel.jpg

我曾尝试填充TextBlock,但是在填充一个Textblock时,所有Text Blocks都在进行修复,与margin相同。

你可以帮我这么做吗?

2 个答案:

答案 0 :(得分:0)

HorizontalAlignment解决您的问题。但是父控制必须设置width

<Button Height="55">
            <StackPanel Orientation="Vertical" Width="180">
                <TextBlock Text="{Binding Item.Quantity}" HorizontalAlignment="Left"/>
                <TextBlock Text="{Binding Item.ItemName}" HorizontalAlignment="Center"/>
                <TextBlock Text="{Binding Item.ItemSpecification}" HorizontalAlignment="Center"/>
            </StackPanel>
    </Button>

答案 1 :(得分:0)

尝试在第一个textBlock上指定negative left margin -

<Button Width="180" Height="55">
   <StackPanel Orientation="Vertical">
       <TextBlock Text="Item1" Margin="-70,0,0,0"/>
       <TextBlock Text="Item2"/>
       <TextBlock Text="Item3"/>
   </StackPanel>
</Button>

输出 -

enter image description here