2014-06-05 11 views
1

Je le code suivant:Windows Phone 8.1 Mise

<PivotItem 
    x:Uid="PivotDraw" 
    Margin="19,14.5,0,0" 
    Header="drawx" 
    DataContext="{Binding Draw}" 
    d:DataContext="{Binding Draws[0], Source={d:DesignData Source=/DataModel/SampleData.json, Type=data:DataSource}}" 
    CommonNavigationTransitionInfo.IsStaggerElement="True"> 
    <!--Double line list with text wrapping--> 
    <ListView 
     ItemsSource="{Binding Rounds}" 
     IsItemClickEnabled="True" 
     ItemClick="ItemView_ItemClick" 
     ContinuumNavigationTransitionInfo.ExitElementContainer="True"> 
     <ListView.ItemTemplate> 
      <DataTemplate> 
       <StackPanel Margin="0,0,0,9.5"> 
        <TextBlock 
         Text="{Binding RoundNumber}" 
         TextWrapping="Wrap" 
         Pivot.SlideInAnimationGroup="1" 
         CommonNavigationTransitionInfo.IsStaggerElement="True" 
         Style="{ThemeResource ListViewItemTextBlockStyle}" 
         Margin="0,0,19,0"/> 
        <ListView ItemsSource="{Binding Formations}"> 
         <ListView.ItemTemplate> 
          <DataTemplate> 
           <TextBlock Text="{Binding Shorthand}"></TextBlock> 
          </DataTemplate> 
         </ListView.ItemTemplate> 
        </ListView> 
       </StackPanel> 
      </DataTemplate> 
     </ListView.ItemTemplate> 
    </ListView> 
</PivotItem> 

Ce qui me donne toutes les données que je suis en train de revenir, mais pas la mise en page que je veux. Je reçois (entre parenthèses est la propriété Biding:

1 (round number) 
A (formation shorthand) 
B (formation shorthand) 
C (formation shorthand) 

2 
D 
E 
F 

Quand je suis à la recherche:

Round 1 
A, B, C 

Round 2 
D, E, F 

Il est évident que le ListView est la mauvaise chose à utiliser, pourrait fonctionner pour les tours individuels mais pas à Afficher les formations sur une seule ligne, était principalement préoccupé par l'obtention des données dont j'avais besoin affiché à ce stade, mais je suis maintenant incertain de ce que je suis le contrôle pour obtenir le résultat que je veux.O

Répondre

2

Vous pouvez définir ListView.ItemsPanel de votre intérieur ListView à StackPanel avec Horizontal Orientation pour obtenir le résultat que vous voulez.

<ListView ItemsSource="{Binding Formations}"> 
     <ListView.ItemsPanel> 
      <ItemsPanelTemplate> 
       <StackPanel Orientation="Horizontal"></StackPanel> 
      </ItemsPanelTemplate> 
     </ListView.ItemsPanel> 
     <ListView.ItemTemplate> 
      <DataTemplate> 
       <TextBlock Text="{Binding Shorthand}"></TextBlock> 
      </DataTemplate> 
     </ListView.ItemTemplate> 
    </ListView> 
+0

Fonctionne, merci. – blawford

Questions connexes