У меня есть один UserControl, который имеет ListView, показывающий список объектов клиента. Двойной щелчок по одной из строк воспроизводит анимацию и переходит к другому UserControl, который показывает список учетных записей для этого клиента.
Второй пользовательский элемент управления привязан к свойству Accounts объекта Client. Список учетных записей загружается при первом обращении к свойству. Это все прекрасно работает, если список аккаунтов невелик. Если список учетных записей велик, между двойным щелчком и появлением списка учетных записей очень заметна задержка. А анимация вообще не воспроизводится.
Я понимаю, что здесь происходит, но я не уверен, как лучше это исправить. Как сделать так, чтобы анимация все еще воспроизводилась и отображался второй пользовательский элемент управления, но список учетных записей отображается по мере их загрузки? Я понимаю, что мне нужно будет загрузить представление списка асинхронно, и у меня нет проблем с использованием BackgroundWorker для этого, но я не уверен, где эта загрузка произойдет.
Список учетных записей представляет собой ObservableCollection, а объект Client реализует INotifyPropertyChanged, однако не вызывает PropertyChanged для свойства account, поскольку у него нет установщика.