C# 作为画布背景的WebBrowser
我喜欢使用C#在WPF中添加WebBrowser控件作为画布背景。我该怎么做?我现在有以下代码。但是不起作用C# 作为画布背景的WebBrowser,c#,wpf,xaml,C#,Wpf,Xaml,我喜欢使用C#在WPF中添加WebBrowser控件作为画布背景。我该怎么做?我现在有以下代码。但是不起作用 <Canvas Name="canvas" Grid.ColumnSpan="4" Grid.Row="1" MouseDown="Canvas_MouseDown" MouseMove="Canvas_MouseMove" MouseUp="Canvas_MouseUp" Margin="0,0,0,16" Grid.RowSpan="3">
<Canvas
Name="canvas"
Grid.ColumnSpan="4"
Grid.Row="1"
MouseDown="Canvas_MouseDown"
MouseMove="Canvas_MouseMove"
MouseUp="Canvas_MouseUp"
Margin="0,0,0,16"
Grid.RowSpan="3">
<Canvas.Background>
<VisualBrush>
<VisualBrush.Visual>
<WebBrowser
x:Name="wbMain"
Height="246"
Width="592" />
</VisualBrush.Visual>
</VisualBrush>
</Canvas.Background>
</Canvas>
据我所知,WebBrowser控件不是标准的WPF控件。它基本上是一个嵌入了IE控件的窗口。我很确定你不能用这种方式使用它。它是一个嵌入式IE窗口,所以你不能用那种方式使用它
但是,您可以通过以下方式使用chrome one:
您还可以将其映射到曲面,为其设置动画等。您不能这样做。web浏览器控件是一个Internet Explorer ActiveX包装器,包含由此产生的问题 但是,您可以使用
控件在其顶部绘制,或者如果您不介意失去交互性,请尝试生成网页的图像并将其用作画布背景
如果您正在考虑使用,请记住:
- 它还不支持COM可见(因此没有
javascript方法返回到您的C#代码)window.external
- 它有一种依赖性,只有在非商业用途时才是免费的
- 它将增加超过10MB的代码大小,因为它需要嵌入Chromium