微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

silverlight – DataBound数据透视控件不创建第一个PivotItem

Windows Phone 7页面中,我有以下控件:

<controls:Pivot x:Name="PiVoter" Title="{Binding Name}" 
      TitleTemplate="{StaticResource PivottitleTemplate}" 
      HeaderTemplate="{StaticResource PivotHeaderTemplate}"
      ItemsSource="{Binding Items}"
      ItemTemplate="{StaticResource displayItemDataTemplate}">
</controls:Pivot >

与此DataTemplate:

<DataTemplate x:Key="displayItemDataTemplate">    
    <Image Grid.Column="0" Stretch="Uniform"
        Source="{Binding LargeImage,Converter={StaticResource UriBitmapConverter}}"/>
    <StackPanel Grid.Column="1" Orientation="Vertical">
        <HyperlinkButton NavigateUri="{Binding Uri}" Content="{Binding Uri}"/>
    </StackPanel>    
</DataTemplate>

ItemsSource是一个ObservableCollection.当页面显示时,会创建所有PivotItem,但是除非我向前滚动并返回,否则第一个项目不会被创建.它在滚动列表中有一个条目,但没有PivotItem控件.

如果我在Pivot Control的LoadPivotItem事件中放置了一个断点,则当首次显示枢轴时,它不会被调用,但是当我滚动并返回到第一个项目时,只能被击中.

有没有人看到与枢轴控制相似的行为,并有一个工作?还是我做错事了?

解决方法

我遇到了同样的问题.

在构造函数中应该设置数据透视的DataContext.我正在将DataContext设置在Page_Loaded事件中,而第一个数据项不会触发“加载”事件,如上所述.通过简单地绑定我的DataContext,事件开始触发.

我相信这是框架中的一个错误,但我还没有做足够的确认.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐