ダブル タップ イベントを使用しているときに、ListViews ItemSource - ObservableCollection がより少ないアイテムで読み込まれると、致命的なエラーが発生します。今、これの非常に簡単な例を書きましたが、それでも同じエラーが発生します。
これは Windows 8.1 ストア アプリケーションです。
簡単な例: リストビューに 6 つの項目があり、項目番号 3 をダブルタップすると、ListView は 4 つの項目で再バインドされます。これは完璧に機能します。
しかし、項目番号 5 または 6 をダブルタップすると、致命的なエラーが発生します。
コード:
<ListView x:Name="myListView" DoubleTapped="myListView_DoubleTapped" />
public MainPage()
{
this.InitializeComponent();
List<string> list1 = new List<string>();
list1.Add("item1");
list1.Add("item2");
list1.Add("item3");
list1.Add("item4");
list1.Add("item5");
list1.Add("item6");
myListView.ItemsSource = list1;
}
private void myListView_DoubleTapped(object sender, DoubleTappedRoutedEventArgs e)
{
List<string> list2 = new List<string>();
list2.Add("OterhItem1");
list2.Add("OterhItem2");
list2.Add("OterhItem3");
list2.Add("OterhItem4");
myListView.ItemsSource = list2;
}
更新: 同じことを試しましたが、Tapped イベントのみを使用しましたが、正常に動作します。したがって、これはダブルタップ イベントでのみ発生するようです。