Не удается инициализировать ChromiumWebBrowser внутри класса, ограниченного JSB - PullRequest
0 голосов
/ 03 августа 2020

Я выполнил следующие шаги , чтобы настроить JSB. В моем ограниченном классе мне нужно вернуть источник запроса API (поэтому я не могу использовать GetPageSourceAsyn c, потому что контекст JS никогда не создается). Итак, я использую трюк копирования и немедленной вставки содержимого страницы в строковую переменную (см. результат ). Этот код не работает, я получаю следующее исключение:

The ChromiumWebBrowser instance creates the underlying Chromium Embedded Framework (CEF) browser instance in an async fashion. The undelying CefBrowser instance is not yet initialized. Use the IsBrowserInitializedChanged event and check the IsBrowserInitialized property to determine when the browser has been initialized.  

, которое происходит на bro.SelectAll();:


public class boundClass
{
        ChromiumWebBrowser bro;

        public boundClass()
        {
            bro = new ChromiumWebBrowser("https://google.com");
        }

        public string getAuthSource(string url)
        {
            string source = String.Empty;

            bro.Load(url);

            while (bro.IsLoading)
            {

            }

            bro.SelectAll();
            bro.Copy();
            string result = Clipboard.GetText();
            Clipboard.Clear();

            return result;
        }

    }

В чем проблема? ChromiumWebBrowser кажется мне хорошо инициализированным ...

...