エンドレスリストボックス(ユーザーが最後までスクロールしたときにデータのチャンクをロードするリストボックス)を実装する必要があり、ViewModelを使用しています。
ListBoxをObservableCollectionにバインドしていますが、ListBoxの最後に到達したことについて通知を受け取り、MVVMパラダイムを破らないようにする方法がわかりません。どうすればこれを達成できますか?
私が知る必要がある唯一のことは、MVVMの機能と制約を保持し、コレクションが最後まで列挙されたときに通知を受け取る方法です。
ありがとう。
編集
私は少し掘り下げてきましたが、これは簡単な解決策ではないのではないかと思います。唯一の可能性は、ICollectionとINotifyCollectionChangedを実装するカスタムコレクションを実装することだと思います。しかし、ListBoxやその他のItemsSource対応コントロールの内部メカニズムがどのように機能するかわからないため、遅延読み込みを実装する方法がわかりません。
ItemsSourceを利用するWPコントロールの主要なフェッチメカニズムはIEnumerableインターフェイスですか?それともインデクサーメソッドを使用していますか?どのようにカウントを呼び出しますか?それはカウントに依存しますか、それともライフシクルの間に変更できますか(そしてどの呼び出しで?すべての呼び出しがカウントを変更してからNotifyCollectionChangedを呼び出すことができるわけではないと思います)。
ドキュメントはありますか?または、利用可能な実装はありますか?