如何知道它是Pivot项目第一次聚焦?

时间:2013-11-13 20:22:53

标签: c# xaml windows-phone-7 windows-phone-8 windows-phone

我想加载一些数据,但是第一次用户正在观看PivotItem。如何看到这是用户第一次使用特殊商品? ......

我可以使用GotFocus事件并使用IsLoaded = false这样的变量,但看起来不太好。

<phone:PivotItem GotFocus="Item_GotFocus">

2 个答案:

答案 0 :(得分:1)

为每个PivotItem命名,例如<phone:PivotItem x:Name="Pivot1"/>,然后使用Pivot的{​​{1}}

SelectionChanged

为了检查他们之前是否曾经去过那里,你可以创建一个private void MyPivot_SelectionChanged(object sender, SelectionChangedEventArgs args) { if(e.AddedItems.Contains(Pivot1)) //Do stuff here } 并添加已经看过的那些。

List<PivotItem>

然后将private List<PivotItem> _seenPivots; // The page constructor public MyPage() { //Regular Page initialization _seenPivots = new List<PivotItem>(); } 处理程序更改为:

SelectionChanged

希望这有助于编码!

编辑:添加了第一次检查的部分。

答案 1 :(得分:0)

尝试使用LoadingPivotItem处理程序

代码段

<强> XAML

<controls:Pivot Title="MY APPLICATION" x:Name="MyPivotControl" LoadingPivotItem="Pivot_LoadingPivotItem">

<强> C#

 private void Pivot_LoadingPivotItem(object sender, PivotItemEventArgs e)
    {
        switch (MyPivotControl.SelectedIndex)
        { 
            case 0:
                MessageBox.Show("First pivot page is actived");
                break;
            case 1:
                MessageBox.Show("Second pivot page is actived");
                break;
        }
    }