Windows Phone8.1レイアウト
-
26-12-2019 - |
質問
私は次のコードを持っています:
<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>
これは私が返そうとしているすべてのデータを提供しますが、私が望むレイアウトは提供しません。私は取得しています(括弧内はbidingプロパティです:
1 (round number)
A (formation shorthand)
B (formation shorthand)
C (formation shorthand)
2
D
E
F
私が探しているとき:
Round 1
A, B, C
Round 2
D, E, F
明らかに、ListViewは使用するのが間違っていますが、個々のラウンドでは機能しますが、フォーメーションを1行に表示することはできませんでしたが、主にこの時点で必要なデータを表示することを心配していましたが、私が望む結果を得るために私がどのようなコントロールをしているのかわかりません。
解決
あなたが設定することができます ListView.ItemsPanel
あなたの内部の ListView
に StackPanel
横を使って Orientation
あなたが望む結果を得るために。
<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>
所属していません StackOverflow