2016-03-07 78 views
0

我有一個翻轉視圖和3個圖像,我希望它自動更改圖像,問題是我使用了綁定技術,但它不起作用,我得到白色圖像我flipView,這是我的代碼:如何使用DataBinding在FlipView中顯示3張圖像

MyPage.cs:

private void AddImageIntoList() 
     { 
      var page1 = new SampleItem() 
      { 
       Image1 = "images/img1.jpg", 
      }; 

      var page2 = new SampleItem() 
      { 
       Image2 = "images/img2.jpg", 
      }; 

      var page3 = new SampleItem() 
      { 
       Image3 = "images/img3.jpg", 
      }; 

      var pages = new List<SampleItem>() 
      { 
       page1, 
       page2, 
       page3 
      }; 

      flipView1.ItemsSource = pages; 
      ContextControl.ItemsSource = pages; 
      ContextControl.SelectionChanged += ContextControl_SelectionChanged; 
     }} 

MyPage.xaml.cs:

<FlipView x:Name="flipView1" Background="Transparent" IsSynchronizedWithCurrentItem="False"> 
      <FlipView.ItemTemplate> 
       <DataTemplate > 
        <Grid> 
         <Grid.Background> 
          <ImageBrush Stretch="UniformToFill" ImageSource="{Binding}" /> 
         </Grid.Background> 
        </Grid> 
       </DataTemplate> 
      </FlipView.ItemTemplate> 
</FlipView> 

ButtonImages.cs:

public class SampleItem 
     { 

     public string Image1 { get; set; } 
     public string Image2 { get; set; } 
     public string Image3 { get; set; } 
    } 

    public class ButtonImages 
    { 
     public List<SampleItem> SampleItems { get; set; } 

      public ButtonImages() 
      { 
       SampleItems = new List<SampleItem>(); 

       SampleItems.Add(new SampleItem() 
       { 
        Image1 = "images/img1.jpg" 
       }); 

       SampleItems.Add(new SampleItem() 
       { 
        Image2 = "images/img2.jpg" 
       }); 

      SampleItems.Add(new SampleItem() 
      { 
       Image3 = "images/img3.jpg" 
      }); 

}

所以請我怎麼能糾正我的代碼顯示在FlipView那些3個圖像與數據綁定

感謝您的幫助

回答

1

我不知道爲什麼SampleItem類有三個屬性Image1-3。它應該只有一個屬性Image(或者你可以忽略SampleItem類,只使用字符串 - 圖像路徑)。之後,將您在ImageBrush中的綁定更改爲:

ImageSource="{Binding Image}" 
+0

非常感謝Sir先生現在可以工作:D – user3821206

+0

Sir?沒關係。 –

相關問題