垂直对齐列表框到底部

时间:2012-09-13 08:37:47

标签: c# windows-phone-7 listbox vertical-alignment longlistselector

我需要在此图片上布置我的列表框

enter image description here

我已经尝试过为listbox和longlistselector做的一切......

 <ListBox WP7Panels:DockPanel.Dock="Bottom" Name="MsgControlsList" 
                              ItemsSource="{Binding}" 
                              Height="600" 
                              HorizontalContentAlignment="Stretch"
                              VerticalAlignment="Bottom" VerticalContentAlignment="Bottom">
            <ListBox.Style>
                <Style TargetType="ListBox">
                    <Setter Property="VerticalAlignment"
            Value="Bottom" />
                    <Setter Property="VerticalContentAlignment"
            Value="Bottom" />
                </Style>
            </ListBox.Style>
            <ListBox.ItemTemplate>
            <DataTemplate>
                    <WP7Panels:DockPanel LastChildFill="True">
                        <HistoryClasses:HistoryElementTemplate WP7Panels:DockPanel.Dock="Bottom"  VerticalAlignment="Bottom" DataContext="{Binding}" HorizontalContentAlignment="Stretch"/>
                    </WP7Panels:DockPanel>
                </DataTemplate>
        </ListBox.ItemTemplate>
        <ListBox.ItemsPanel>
            <ItemsPanelTemplate>
                <toolkit:WrapPanel/>
            </ItemsPanelTemplate>
        </ListBox.ItemsPanel>
    </ListBox>
    </WP7Panels:DockPanel>    

..但我仍然有列表框的顶部垂直对齐方式。

enter image description here

有什么想法吗?

1 个答案:

答案 0 :(得分:3)

如果您没有设置列表框的高度,则项目位于屏幕底部。

<Grid>
    <Grid.RowDefinitions>
        <RowDefinition Height="Auto"/>
        <RowDefinition Height="600"/>
        <RowDefinition Height="Auto"/>
     </Grid.RowDefinitions>

     <TextBlock Text="Test"/>

     <ListBox Grid.Row="1"  VerticalAlignment="Bottom">
          <ListBox.ItemTemplate>
               <DataTemplate>
                    <TextBlock Text="Item"/>
               </DataTemplate>
           </ListBox.ItemTemplate>
      </ListBox>

      <TextBlock Grid.Row="2" Text="Test"/>

  </Grid>