我喜欢使用C#在WebF中添加一个WebBrowser控件作为Canvas背景。我该怎么做呢?我现在有以下代码。但是不起作用。
<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>
答案 0 :(得分:1)
你不能这样做。 Web浏览器控件是一个Internet Explorer ActiveX包装器,会导致空域问题。
但是,您可以使用<Popup>
控件在其上绘图,或者如果您不介意丢失交互性,请尝试生成网页图像并将其用作画布背景。
如果您正在考虑使用WPF Chrome wrapper by Chris Cavanagh,请记住:
window.external
javascript方法返回到您的C#代码)答案 1 :(得分:0)
据我所知,WebBrowser控件不是标准的WPF控件。它基本上是一个带有IE控件的嵌入式窗口。我很确定你不能以这种方式使用它。
答案 2 :(得分:0)
这是一个嵌入式IE窗口,所以你不能那样使用它。
然而,您可以使用Chrome方式:http://chriscavanagh.wordpress.com/2009/08/25/a-real-wpf-webbrowser/
您还可以将其映射到曲面,为其设置动画等。