我有一个适用于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}"
>
修改
我能够通过以下行为重现崩溃:打开应用程序,导航到另一个页面,返回到数据透视页面(多次)并翻转枢轴项。
答案 0 :(得分:1)
我遇到了同样的问题。通过处理选择更改事件来解决它。不是解决方案,而是解决方法。