時間の経過とともに変更されるデータを表示する ListBox があります。
キャッチできない例外が突然スローされるまで、ランダムな時間はうまく機能します。
私のアプリケーションがどのように機能するかを説明しましょう:
- いくつかのデータを追跡します (独自のスレッド)
- これらの「トラック」を ListBox (独自のスレッド) に表示します
- より多くのデータを追跡しています
- リストボックスにも新しい「トラック」が表示されます。
- 3 に進みます。
例外は 3. または 4. で解決します。
新しいデータを取得するとき (ビューなどを変更しないとき) にスローされることもあれば、ビューが更新されるときにスローされることもあります。
ListBox の更新には、常に実行される独自のスレッドがあり、これを行うだけです:
TrackedProcessList.ItemsSource = null;
TrackedProcessList.ItemsSource = this.applicationTracker.trackings;
データ追跡も独自のスレッドで実行され、新しいデータが生成されます。
私はこれらのstackoverflow-threadsを読みましたが、解決策がありません:
http://stackoverflow.com/questions/14336750/upgrading-to-net-4-5-an-itemscontrol-is-inconsistent-with-its-items-source
http://stackoverflow.com/questions/14470621/an-itemscontrol-is-inconsistent-with-its-items-source-happening-in-nested-list
http://stackoverflow.com/questions/15137213/wpf-listview-inside-grid-scrolling-error-an-itemscontrol-is-inconsistent-with
http://stackoverflow.com/questions/13692939/how-can-you-share-a-resource-between-listbox-item-instances
また、私の質問を解決するために何が必要なのかもわからないので、投稿する必要があることを書いていただけますか