CefGlue如何获取HTML源代码?

时间:2013-08-22 06:03:26

标签: c# .net wpf

我在谷歌小组提出了问题,他们告诉我实施'CefStringVisitor'课程,我这样做了。

namespace Xilium.CefGlue.WPF.Customer
{
    class MyCefStringVisitor : CefStringVisitor
    {
        private string html;
        protected override void Visit(string value)
        {
            html =  value;
        }

        public string Html
        {
            get { return html; }
            set { html = value; }
        }
    }
}

但是我收到了Text字样,而不是HTML soucrce。

我如何获得HTML源代码?

1 个答案:

答案 0 :(得分:0)

试试这个

private sealed class SourceVisitor : CefStringVisitor
{
    private readonly Action<string> _callback;

    public SourceVisitor(Action<string> callback)
    {
        _callback = callback;
    }

    protected override void Visit(string value)
    {
        _callback(value);
    }
}


protected override void OnLoadEnd(CefBrowser browser, CefFrame frame, int httpStatusCode)
{
        if (frame.IsMain)
        {
            string HtmlSourceCode;
            var visitor = new SourceVisitor(text =>
            {
                BeginInvoke(new Action(() =>
                    {
                        HtmlSourceCode = text;
                    }));
            });
            frame.GetSource(visitor);
        }
}