У меня есть приложение wpf с вкладкой, которая показывает элемент управления WebBrowser, который загружает страницу заказов данного клиента. На этой странице есть несколько вызовов для документа и фреймов, после чего элемент управления правильно отображает содержимое в пользовательском интерфейсе.progressbar для управления веб-браузером в wpf C#
Мы планируем реализовать индикатор прогресса для этой вкладки, и мы использовали панель прогресса с фоновым рабочим.
Мы устанавливаем свойство showbar для версии progress на true в событии BrowserNavigating() и отображаем свойство false на DocumentComplete() управления браузером. Поскольку я делаю это, индикатор прогресса не будет отображаться в пользовательском интерфейсе непрерывно до тех пор, пока все http-вызовы не будут успешно завершены. Также он включается и выключается и в конечном итоге дает плохой пользовательский интерфейс.
Когда мы пытаемся загрузить страницу заказов, она делает не менее 6-10 http-вызовов на сервере. Итак, можем ли мы дождаться завершения всех вызовов и только затем скрыть индикатор выполнения? Как отслеживать эти асинхронные вызовы?
Я думаю, мы можем использовать какую-то структуру данных (например, Circular LL) для хранения всех вызовов (BrowserNavigating и DocumentComplete), но как узнать, все ли увольнения или нет, до того, как я жду события DocumentCompelte ?