2012-09-16 2 views
0

갱신 2012년 9월 17일는 :는 질문을 재 작성 및 레크리에이션는 내가 ItemDetailPage에 WrapGrid 스타일의 이미지 갤러리를 추가하기 위해 노력하고있어항목 내에서 중첩 된 WrapGrid/GridView ScrollViewer?

단계를 추가했다. 지금까지 내가 찾은 유일한 해결책은 그룹 스타일을 만들고 DataTemplate 선택기를 사용하는 것입니다. 내 페이지의 모든 열에 대한 클래스를 만들어야하므로 세부 정보 페이지에서이 작업을 수행하는 것은 과도한 것처럼 보입니다.

다음과 같이이 문제를 해결하려고했지만 GridView는 허용되지 않는 ScrollViewer와 독립적으로 스크롤합니다. 마지막으로

<!--Fixed column layout, replaces RichTextColumns from template-->  
    <Grid Grid.Row="1"> 
     <Grid.ColumnDefinitions> 
      <ColumnDefinition Width="800"/> 
      <ColumnDefinition Width="1400"/> 
     </Grid.ColumnDefinitions> 
     <StackPanel> 
      <TextBlock Text="{Binding Title}"/> 
      <Image x:Name="image" MaxHeight="480" Margin="0,20,0,10" Stretch="Uniform" Source="{Binding Image}"/>          
     </StackPanel> 
     <GridView ScrollViewer.HorizontalScrollMode="Disabled" VerticalAlignment="Top" ItemsSource="{Binding SubItems}" Grid.Column="1" ItemTemplate="{StaticResource GridViewDataTemplate1}" > 
     </GridView> 
    </Grid> 

를 다음에서 ScrollViewer에 RichTextColumns을 대체 ItemDetailPage.xaml에

// Add to SampleDataItem TODO: replace int with image url strings 
private List<int> _subItems = null; 
public List<int> SubItems 
{ 
    get 
    { 
     if (_subItems == null) 
     { 
      _subItems = new List<int>(); 
      for (int i = 0; i < 50; i++) 
       this._subItems.Add(i); 
     } 
     return this._subItems; 
    } 
    set { this.SetProperty(ref this._subItems, value); } 
} 

을 SampleDataItem이 속성을 추가

:

은 VS의 기본 그리드 응용 프로그램 시작을 다시 만들려면 다음 DataTemplate을 추가하십시오.

<DataTemplate x:Key="GridViewDataTemplate1"> 
    <Grid Background="Yellow" Width="200" Height="200"/> 
</DataTemplate> 

답변

0

당신은 내가 여기에 가장 좋은 방법에 대해 생각하는 당신을 촉구, Disabled

<GridView ScrollViewer.HorizontalScrollMode="Disabled" /> 

그러나에의 GridView의 HorizontalScrollMode을 설정하여이를 달성 할 수있다. GridView가 각각에 관련이 없으면 별도의 페이지에 표시하십시오. 관련이있는 경우 하나의 GridView를 그룹화합니다. DataTemplateSelector을 사용하여 그룹의 항목 스타일을 다르게 지정할 수 있습니다.

+0

Disabled로 설정하면 작동하지 않습니다. 제 질문을 다시 말하고 레크리에이션 단계를 제공했습니다. – kbeal2k

+0

kbeal2k : GridView를 ScrollViewer에 배치 할 수 없다는 것을 발견했지만 StackPanel에 많은 VariableSizedWrapGrids를 배치 할 수 있습니다. –

관련 문제