【发布时间】:2013-06-28 09:10:35
【问题描述】:
我正在将 CefSharp 用于 WPF。我想在 MVVM 架构中使用它。不幸的是有一个问题。 在我看来:
<ContentPresenter Content="{Binding Browser}"
HorizontalAlignment="Center"
VerticalAlignment="Center"/>
在 ViewModel 中,我将一个新对象放入 Browser:
var settings = new CefSharp.Settings
{
PackLoadingDisabled = true,
}
if (CefSharp.CEF.Initialize(settings))
{
int counter = 0;
this.Browser = new WebView();
}
很遗憾,在那之后的任何时候我都无法加载任何 URL。它说Browser not initialized,实际上IsBrowserInitialized 属性(在Browser 中)是false。
这很奇怪,因为在测试应用程序中,而不是 MVVM,我使用相同的代码来实例化它工作的 WebView。唯一的区别是我以编程方式将浏览器添加到网格中,因为它不是 MVVM。
有人在 WPF MVVM 应用程序中获得了 CefSharp 吗?有什么想法吗?
谢谢
编辑:
我注意到在测试非 MVVM 应用程序中,IsBrowserInitialized 属性设置为 false,直到窗口构造函数结束作业。
【问题讨论】:
-
我设法让它工作,但有一个奇怪的问题。当我单击 WebView 内的页面时 - 它会从页面顶部到我单击的点进行选择。为什么?