我使用Pivot显示动态数量的数据透视项。以下代码是我正在做的简化版本。
//.xaml
<Pivot Name="PivotImages">
<Pivot.ItemTemplate>
<DataTemplate>
<Image Name="ImageFull" Source="{Binding PhotoUrl}" />
</DataTemplate>
</Pivot.ItemTemplate>
</Pivot>
//.xaml.cs
private readonly ObservableCollection<PhotoPageViewModel> _photoPageViewModelList = new ObservableCollection<PhotoPageViewModel>();
PivotImages.ItemsSource = _photoPageViewModelList;
//PhotoPageViewModel.cs
private string _photoUrl;
public string PhotoUrl
{
get { return _photoUrl; }
set
{
_photoUrl = value;
OnPropertyChanged("PhotoUrl");
}
}
我使用
添加新项目_photoPageViewModelList.Add(new PhotoPageViewModel());
其中PhotoUrl
在构造函数中初始化。该模型似乎按预期工作。问题是ImageFull
在选择新的枢轴项时从Web加载图像。
我想要实现的是,在添加新的枢轴项目时加载图像,而不是在选择的枢轴项目时加载。因此,当您滑动到下一个透视项目时,您应该已经看到了加载的图像。
编辑:我意识到我可能正在使用错误的元素来解决我的问题。滑动动画完成后,Pivot仅显示新项目。我想拥有的是一个可见的枢轴项目,紧挨着当前的一个。就像在Photo App中一样,只要你开始向左或向右滑动就可以看到下一张照片。