我正在将 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
属性 (in Browser
) 是false
。
这很奇怪,因为在测试应用程序中,而不是 MVVM,我使用相同的代码来实例化它工作的 WebView。唯一的区别是我以编程方式将浏览器添加到网格中,因为它不是 MVVM。
有人在 WPF MVVM 应用程序中获得 CefSharp 吗?有任何想法吗?
谢谢
编辑:我注意到在测试非 MVVM 应用程序中,该IsBrowserInitialized
属性设置为 false,直到窗口构造函数结束工作。