motkot
@motkot
Программирование C#.

Почему browser.FrameLoadEnd перестал работать нормально?

Типо раньше было все более менее нормально, срабатывало 2 раза ( при начале и конце загрузки ) и нормально, а теперь срабатывает только при начале, когда html пустой. Че не так?
public Form1()
        {
            InitializeComponent();
            InitializeChromium();

            browser.FrameLoadEnd += WebBrowserFrameLoadEnded;
        }


        private void WebBrowserFrameLoadEnded(object sender, FrameLoadEndEventArgs e)
        {

            Task.Run(async () => html = await browser.GetSourceAsync());


            MessageBox.Show(html); // html = null
        }
  • Вопрос задан
  • 332 просмотра
Решения вопроса 1
Task.Run(async () => html = await browser.GetSourceAsync());
            MessageBox.Show(html); // html = null

Вы не дождались окончания загрузки.
Попробуйте сделать хендлер async void и сделать так:
html = await browser.GetSourceAsync()
MessageBox.Show(html);
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы