2017-10-28 15 views
1

2つのリストビューを異なる画面に表示するCarouselViewを実装しようとしました。しかし、私はアプリを起動すると何も起こらないようだ、画面は空白のままです。 ListViewを文字列の基本リストに縮小しましたが、CarouselViewを正しく動作させることができませんでした。私は間違って何をしていますか?Xamarin.Forms CarouselViewはリストビューを表示しません

XAML:

<StackLayout x:Name="Layout" Spacing="0"> 
    <forms:CarouselView x:Name="CarouselView" 
         ItemSelected="CarouselView_OnItemSelected" 
         ItemsSource="{Binding lists}"> 
     <forms:CarouselView.ItemTemplate> 
      <DataTemplate> 
       <ListView/> 
      </DataTemplate> 
     </forms:CarouselView.ItemTemplate> 
    </forms:CarouselView> 
</StackLayout> 

C#:

lists = new ObservableCollection<ListView> 
    { 
     new ListView 
     { 
      ItemsSource = new ObservableCollection<string>{ 
       "test", 
       "test" 
      } 
     }, 
     new ListView 
     { 
      ItemsSource = new ObservableCollection<string>{ 
       "test", 
       "test" 
      } 
     } 
    }; 

コード私はラベルの代わりに、CarouselView内部リストビューを使用すると、期待どおりに動作します。だから問題はおそらく私がCarouselViewのItemSourceを定義する方法です。私はちょうどそれを修正する方法を見つけることができません。

+0

あなたはそれを機能させるために管理しましたか? – Greggz

+0

はい、コードビハインドで同じコンポーネントを作成しようとしましたが、何らかの理由で動作し始めました。 – Kullis

答えて

1

その理由は、CVを使用しているときにStackLayoutHeightRequestWidthRequestまたは垂直\水平オプションを指定する必要があるということです。より一貫した動作のためにGridを使用してください。

関連する問題