갱신 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>
Disabled로 설정하면 작동하지 않습니다. 제 질문을 다시 말하고 레크리에이션 단계를 제공했습니다. – kbeal2k
kbeal2k : GridView를 ScrollViewer에 배치 할 수 없다는 것을 발견했지만 StackPanel에 많은 VariableSizedWrapGrids를 배치 할 수 있습니다. –