Domanda

Ho il seguente codice:

<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>
.

Che mi dà tutti i dati che sto cercando di tornare, ma non il layout che voglio.Sto ricevendo (tra parentesi è la proprietà Biding:

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

2
D
E
F
.

Quando sto cercando:

Round 1 
A, B, C

Round 2  
D, E, F
.

Ovviamente la mailview è la cosa sbagliata da usare, potrebbe funzionare per i singoli round ma non visualizzare le formazioni su una singola riga, è stata principalmente preoccupata di ottenere i dati necessari visualizzati a questo punto, ma ora non sono sicuro di cosaControllo che ho dopo aver ottenuto il risultato che voglio.

È stato utile?

Soluzione

È possibile impostare ListView.ItemsPanel del ListView interiore su StackPanel con Orientation orizzontale per ottenere il risultato desiderato.

  <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>
.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top