使用自定义BrowserContext创建在XAML中定义的WPF BrowserView

时间:2017-09-13 17:01:14

标签: wpf xaml dotnetbrowser

我在XAML文件中定义了一个DotNetBrowser实例

<Grid>
  <wpf:WPFBrowserView x:Name="BrowserView"></wpf:WPFBrowserView>
</Grid>

该应用程序由多人使用,由于此处讨论的问题导致问题:

Chromium profile directory is already used/locked by another browser

是否可以使用XAML定义浏览器控件并仍然为浏览器实例分配自定义上下文?

2 个答案:

答案 0 :(得分:2)

  

是否可以使用XAML定义浏览器控件并仍然为浏览器实例分配自定义上下文?

不,我担心不是。

Browser类的WPFBrowserView属性没有公共设置器,因此您必须以编程方式创建自定义BrowserBrowserContext

BrowserContextParams params1 = new BrowserContextParams("C:\\my-data1");
BrowserContext context1 = new BrowserContext(params1);
Browser browser1 = BrowserFactory.Create(context1);

XAML不支持调用BrowserFactory.Create(context1)等任何内容。

答案 1 :(得分:0)

不幸的是,只有在BrowserContextBrowser是从源代码创建的情况下才能配置自定义WPFBrowserView

可能的方法是将WPFBrowserView及其非默认初始化包装到管理WPFBrowserView的实例化和处理的自定义控件中,使此控件公开所有必需的属性,然后将其插入到你的XAML。