2017-03-25 13 views
0

これを達成する方法について少し混乱します。ここに状況があります。私はオブジェクトのコレクション自体にオブジェクトのコレクションを持っています。私は、第2のオブジェクトからのコレクションをソースとして使用する、第1のコレクション内のすべてのオブジェクトに対して新しいグリッドビューを作成したいと考えています。UWP - 複数のグリッドビューをリストのリストにバインドする

たとえば、私の見解モデルでは、私はApiResponseは同じようなものと定義され、この

public ObservableCollection<ApiResponse> NewsStories 

のようなものを持っている

public class ApiResponse 
{ 
    public List<Article> Articles { get; set; } 
} 

私は、このリストのリスト作っ前に私のXAMLた

<GridView ItemsSource="{Binding Articles}" 
     ItemTemplate="{StaticResource GridViewTemplate }" 
     IsItemClickEnabled="False" 
     IsSwipeEnabled="False" 
     CanDragItems="False" 
     SelectionMode="Single" 
     /> 

のようなもの私はただ一つのAPIレスポンスにバインドすることができ、そのレスポンスからのすべての記事をグリッドビューに表示することができました。しかし今ではリストのリストを持っていきたいと思います。私はこれをリストビューで囲んでみましたが、役に立たなかったのです。

答えて

0

私はそれを理解したかもしれないと思います。まず、私のXAMLで私はその後、私は

<Page.Resources> 
    <DataTemplate x:Key="ArticleTemplate" x:DataType="data:Article">   
      <StackPanel Orientation="Vertical" Width="180" Height="240" > 
      <!-- stuff here --> 
      </StackPanel> 
     </StackPanel> 

    </DataTemplate> 

    <DataTemplate x:Key="ImageTextTemplate" x:DataType="data:ApiResponse">   
      <GridView ItemsSource="{Binding Articles}" 
       ItemTemplate="{StaticResource ArticleTemplate}"      
       Header="{Binding Source}" /> 
    </DataTemplate> 

</Page.Resources> 
を持って

<GridView 
     ItemsSource="{Binding NewsStories}" 
     IsItemClickEnabled="False" 
     CanDragItems="False" 
     SelectionMode="None" 
     ItemTemplate="{StaticResource ImageTextTemplate }"> 
     <GridView.ItemsPanel> 
      <ItemsPanelTemplate> 
       <ItemsWrapGrid Orientation="Vertical"/> 
      </ItemsPanelTemplate> 
     </GridView.ItemsPanel> 
    </GridView> 

そして、私のページのリソースでのようなものを持っています

関連する問題