【问题标题】:CefSharp3 Can't navigate backCefSharp3 无法返回
【发布时间】:2014-10-20 14:42:47
【问题描述】:
我目前正在使用 CefSharp.MinimalExample.Wpf(CEF 分支 1750 和 CefSharp 33.0.0)来评估我的问题。我刚刚向 MainView.xaml 添加了一个按钮,例如 <Button Command="{Binding WebBrowser.BackCommand}">Back</Button>。按钮启用状态在加载站点时更新(一旦加载站点,它就是可按下的)。但是点击它并不能返回导航。
我的第二种方法是在单击browser.ExecuteScriptAsync("history.back()"); 时执行 java 脚本 sn-p 但这也不起作用。
有什么想法吗?
【问题讨论】:
标签:
wpf
chromium-embedded
cefsharp
【解决方案1】:
我也有同样的问题,但是你的回答给了我一个想法,我希望我的解决方案对你有用。
浏览器显示的第一页就像一个空白页,所以,当这个空白页被加载时,我通过浏览器的FrameLoadEnd事件分配了URL。
我有一个标志来避免多次分配 URL。
Browser.FrameLoadEnd += delegate
{
if (!flag)
{
Browser.Address = "http://www.google.com.mx";
flag = true;
}
};
看来问题解决了。
【解决方案2】:
我的调查结果是,如果您过早设置 URL - 在创建浏览器对象 ChromiumWebBrowser 直到大约 250 毫秒(我的机器上的尝试和错误值) - 至少后退功能和 JavaScript 注入不会'不工作。 Initialized 事件不是解决方案,因为它为时过早。除此之外,该网站将呈现良好,您可以浏览网页。这是让我分心并让我在其他地方搜索的部分。