2016-05-02 3 views
0

これは私のコードです。達成したいので、DBから集めたラベルごとに新しいカルーセルページを作成します。だから、私はint型を作って、ラベルから値を取得しましたが、今私はそれをさらに進めて、ラベルごとにカルーセルページを作成したいときに、それを動作させる方法がわかりません。データベースから集めたラベルごとに新しいインデックス(私のCarouselPageのContentPage)を作成するには?

マイページには、両方のコードとXAMLでcarouselpageですので

public partial class PicturePage : CarouselPage 

とXAMLで:

<CarouselPage> && </CarouselPage> 

マイコード:

List<string> labelList = new List<string>(); 

async void loadtest() 
    { 
     var getItems = await parseAPI.getInformation(); 
     foreach (var items in getItems ["results"]) 
     { 
      var value = ""; 
      imagesList.Add (value = items ["label"].ToString()); 
     } 

     base.OnCurrentPageChanged(); 
     var index = Children.IndexOf (CurrentPage); 


     for (int i = 0; i < labelList.Count; i++ && i < index; i++) { //how should I add a new index for each label I gather? 

      myLabel.Text = myLabel.Text + labelList [i]+ "\n"; 

     } 


    } 

答えて

1

Childrenを設定することで、それらを追加します。実行時にContentPagesをオンザフライで作成する:

for (int i = 0; i < imagesList.Count; i++){ 
    var carouselChild = new ContentPage { 
      Padding = padding, 
      Content = new StackLayout { 
       Children = { 
        new Label { 
         Text = labelList[i], 
         FontSize = Device.GetNamedSize (NamedSize.Medium, typeof(Label)), 
         HorizontalOptions = LayoutOptions.Center 
        }, 
        new Image { Source = imagesList[i] } 
       } 
      } 
    }; 

    Children.Add (carouselChild); 
} 
+0

[OK]を私はXAMLでより快適ですが、私はこの機能を試してみましょう!ありがとう – medvedo

関連する問題