2012-04-20 2 views
1

저는 Windows Phone 개발을 처음 사용하므로 나와 함께 맨발로하십시오. 나는 아래와 같이 PivotItem을 가진 간단한 Pivot을 가지고있다. 가로 및 세로 모드에서 ScrollViewer를 사용하여 올바른 스크롤

<StackPanel> 
    <controls:Pivot x:Name="TopPivot" Title="Daily Comics" ItemsSource="{Binding ComicsListModel}" SelectionChanged="TopPivot_SelectionChanged" Height="762"> 
      <controls:Pivot.HeaderTemplate> 
       <DataTemplate> 
        <TextBlock Text="{Binding ComicName}"/> 
       </DataTemplate> 
      </controls:Pivot.HeaderTemplate> 
      <controls:Pivot.ItemTemplate> 
       <DataTemplate> 
        <StackPanel> 
         <TextBlock Text="{Binding PubDate}" HorizontalAlignment="Center" VerticalAlignment="Top" /> 
         <ScrollViewer VerticalScrollBarVisibility="Auto"> 
          <Image x:Name="ComicStrip" Source="{Binding ComicImage}" Stretch="UniformToFill" /> 
         </ScrollViewer> 
        </StackPanel> 
       </DataTemplate> 
      </controls:Pivot.ItemTemplate> 
    </controls:Pivot> 
</StackPanel> 

문제

는 완전히 보이지 않으면 내가 ("ComicStrip"라는 이름의) 이미지가 세로로 스크롤 할 것입니다. 이 모드는 세로 모드에서는 작동하지만 lanscape에서는 작동하지 않습니다. lanscape에서는 이미지를 부분적으로 만 스크롤 할 수 있으며 이미지의 하단 부분은 보이지 않습니다.

내가 lanscape 모드에있을 때 ScrollViewer에 높이를 말해야한다고 생각하지만이 사용 사례를 어떻게 처리해야하는지 모릅니다. 기본 사용 사례처럼 보입니다.

내가해야 할 조언이 있습니까?

+0

당신이 보이는 것이 아니라 자동으로 VerticalScrollBarVisibility를 어떻게 설정하면 어떻게됩니까? –

+0

흠 - 행동에 차이가 없습니다. 그리고 이상하게도 이미지를 패닝 할 때 스크롤바가 보이지 않습니다. –

답변

1

여기 피봇 아이템 템플릿에 StackPanel을 사용하는 것이 문제라고 생각합니다! 그리드를 사용한다면 아무런 문제가 없어야합니다.

이와 피벗 항목 템플릿을 교체 :

<controls:Pivot.ItemTemplate> 
    <DataTemplate> 
     <Grid> 
      <Grid.RowDefinitions> 
       <RowDefinition Height="Auto" /> 
       <RowDefinition /> 
      </Grid.RowDefinitions> 
      <TextBlock Text="{Binding PubDate}" /> 
      <ScrollViewer VerticalScrollBarVisibility="Auto" Grid.Row="1"> 
       <Image x:Name="ComicStrip" Source="{Binding ComicImage}" Stretch="UniformToFill" /> 
      </ScrollViewer> 
     </Grid> 
    </DataTemplate> 
</controls:Pivot.ItemTemplate> 
+1

고마워요! StackPanel은 여기에서 확실히 문제가되었습니다. XAML에 또 다른 StackPanel이 있었는데, 원래의 붙여 넣기에 포함되지 않았으므로 Grid와 이제는 스크롤하여 작업을 바 꾸었습니다! 최종 버전은 다음에서 볼 수 있습니다 : [link] (https://github.com/kypeli/WPDailyComic/blob/master/ComicBrowser/MainPage.xaml) –

+0

이것이 근본 원인입니다. http://stackoverflow.com/questions/802821/how-can-i-get-scrollviewer-to-work-inside-a-stackpanel –

관련 문제