绑定Pivot SelectedIndex导致应用程序随机崩溃Windows Phone 8.1通用应用程序

时间:2015-01-29 08:10:53

标签: windows-phone-8.1 mvvm-light

我有一个适用于WP 8.1的通用应用程序,其中包含一个页面和一个Pivot。 pivot的“SelectedIndex”属性绑定到VM中的属性,如下所示:

public object SelectedPivotIndex
{
    get { return this.selectedPivotIndex; }
    set
    {
        if (this.selectedPivotIndex == value) return;
        this.selectedPivotIndex = value;
        RaisePropertyChanged(() => SelectedPivotIndex);
    }
}

网页代码:

<Pivot x:Name="ContentPivot"
        x:Uid="ContentPivot"
        SelectedIndex="{Binding SelectedPivotIndex, Mode=TwoWay}"
    >...</Pivot>

问题是我不时遇到应用程序崩溃(在App.xaml.cs中):“未处理的异常”,类型为“COMEXCEPTION”。如果我删除xaml中“SelectedIndex”的绑定,这个崩溃停止,但我无法理解为什么它会发生。有时甚至没有显示调试器,应用程序关闭时没有任何错误信息。 BTW我正在使用MVVM Light,因此在页面中设置了视图(页面)和VM之间的“粘合剂”:

<Page
...
DataContext="{Binding Source={StaticResource Locator}, Path=Main}"
>

修改

我能够通过以下行为重现崩溃:打开应用程序,导航到另一个页面,返回到数据透视页面(多次)并翻转枢轴项。

1 个答案:

答案 0 :(得分:1)

我遇到了同样的问题。通过处理选择更改事件来解决它。不是解决方案,而是解决方法。