2012-05-30 2 views
0

저는 WinRT를 처음 사용했으며 그 아래에 여러 개의 타일이있는 그룹 머리글이있는 표준 gridview를 만들려고합니다. 그 비트는 쉽습니다. 나는 또한 컨테이너 스타일을 사용하여 바닥 글을 추가 할 수 있습니다 타일의 그리드 아래에 있도록 수정하기 위해 노력하고있어 :WinRT ControlTemplate ItemsPanel

<GridView 
     x:Name="itemGridView" 
     AutomationProperties.AutomationId="ItemGridView" 
     AutomationProperties.Name="Grouped Items" 
     Margin="116,0,40,46" 
     ItemsSource="{Binding Source={StaticResource groupedItemsViewSource}}" 
     ItemTemplate="{StaticResource Project200x200ItemTemplate}"     
     SelectionMode="None" 
     IsItemClickEnabled="True" 
     ItemClick="ItemView_ItemClick"> 

     <GridView.ItemsPanel> 
      <ItemsPanelTemplate> 
       <VirtualizingStackPanel Orientation="Horizontal"/> 
      </ItemsPanelTemplate> 
     </GridView.ItemsPanel> 

     <GridView.GroupStyle> 
      <GroupStyle> 
       <GroupStyle.HeaderTemplate> 
        <DataTemplate> 
         <Grid Margin="1,0,0,6"> 
          <Button 
           AutomationProperties.Name="Group Title" 
           Content="{Binding Name}" 
           Click="Header_Click" 
           Style="{StaticResource TextButtonStyle}" 
           FontWeight="{Binding IsSelected, ConverterParameter=FontWeight, Converter={StaticResource BooleanToFontWeightConverter}}" 
           /> 
         </Grid> 
        </DataTemplate> 
       </GroupStyle.HeaderTemplate> 
       <GroupStyle.Panel>       
        <ItemsPanelTemplate> 
         <VariableSizedWrapGrid Background="Red" Orientation="Vertical" Margin="0,0,40,0" /> 
        </ItemsPanelTemplate> 
       </GroupStyle.Panel> 

       <GroupStyle.ContainerStyle> 
        <Style TargetType="GroupItem"> 
         <Setter Property="Template"> 
          <Setter.Value> 
           <ControlTemplate> 
            <StackPanel> 
             <ContentPresenter/> 
             <ItemsPresenter/> 
             <TextBlock Text="*** End of group ***"/> 
            </StackPanel> 
           </ControlTemplate> 
          </Setter.Value> 
         </Setter> 
        </Style> 
       </GroupStyle.ContainerStyle> 

      </GroupStyle> 
     </GridView.GroupStyle>    
    </GridView> 

이 거의 작동하지만 컨테이너 스타일, 타일 더 이상 쇼의 그리드를 추가 한 후. .. 그룹 머리글과 '그룹 끝'텍스트 블록이 표시되지만 타일 그리드를 잃어 버렸습니다.

누구나 내가 잘못하고있는 것을 발견 할 수 있습니까? ...?

답변

0

무엇을 잘못하고 있습니까? VirtualizingStackPanel을 해당 StackPanel로 바꾸면 모든 것이 잘 작동하거나 Windows7로 이동합니다 (Vista에서는 문제가 발생 함). Btw. 그룹화 (GroupStyle)를 사용하는 TreeView 또는 DataGrid와 같은 계층 적 개체에서는 가상화가 작동하지 않습니다. this을 살펴보십시오.