2011-11-21 101 views
1

我有列表框與自定義模板,如何以編程方式向下滾動到底部?在自定義模板的Silverlight列表框自動滾動

Automatic Scrolling in a Silverlight List Box描述了滾動到ListBox底部的方法。不幸的是,這種方法不適用於帶有自定義樣式模板的ListBox。

有沒有人成功滾動ListBox與自定義樣式?

問題代碼:

<Grid.Resources> 
    <Style x:Key="HorizontalWrapListBox" TargetType="ListBox"> 
     <Style.Setters> 
      <Setter Property="ItemsPanel"> 
       <Setter.Value> 
        <ItemsPanelTemplate> 
         <toolkit:WrapPanel Orientation="Horizontal" /> 
        </ItemsPanelTemplate> 
       </Setter.Value> 
      </Setter> 
      <Setter Property="Template"> 
       <Setter.Value> 
        <ControlTemplate TargetType="ListBox"> 
         <ScrollViewer> 
          <ItemsPresenter /> 
         </ScrollViewer> 
        </ControlTemplate> 
       </Setter.Value> 
      </Setter> 
     </Style.Setters> 
    </Style> 
</Grid.Resources> 

<ListBox x:Name="MyListBox" Margin="0,0,-12,0" ItemsSource="{Binding Items}" 
     Style="{StaticResource HorizontalWrapListBox}"> 
    <ListBox.ItemTemplate> 
     <DataTemplate> 
      <StackPanel Margin="0,0,0,17" Width="432" Height="78"> 
       <TextBlock Text="{Binding LineOne}" TextWrapping="Wrap" 
         Style="{StaticResource PhoneTextExtraLargeStyle}"/> 
       <TextBlock Text="{Binding LineTwo}" TextWrapping="Wrap" 
         Margin="12,-6,12,0" 
         Style="{StaticResource PhoneTextSubtleStyle}"/> 
      </StackPanel> 
     </DataTemplate> 
    </ListBox.ItemTemplate> 
</ListBox> 

回答