UWP - print webview
本文关键字:webview print UWP | 更新日期: 2023-09-27 18:02:48
我想在UWP应用程序中打印WebView内容。
我已经设置我的WebView接受一个HTML字符串,这工作得很好:
<WebView
ext:HtmlExtension.HtmlString="{Binding HtmlString}"
x:Name="MyWebView"
Grid.Row="1"
Grid.Column="0"
/>
我在MSDN上注意到了这个:
承载UI线程外内容的WebView与需要手势从WebView控件向上传播到父控件的父控件不兼容,例如FlipView, ScrollViewer和其他相关控件。这些控件将无法接收在离线程WebView中发起的手势。此外,不直接支持打印离线web内容-您应该使用WebViewBrush填充来打印元素。
现在我完全糊涂了。
谁能解释一下我怎么能:
- 创建一个WebViewBrush给我一个WebView 如何打印WebViewBrush
非常感谢任何帮助。谢谢。
您可以使用以下代码来创建WebViewBrush:
WebViewBrush wvBrush = new WebViewBrush();
wvBrush.SetSource(myWebView);
wvBrush.Redraw();
myRect.Fill = wvBrush;
XAML: <WebView Name="myWebView" Source="http://www.google.com" Width="1024" Height="500" LoadCompleted="myWebView_LoadCompleted"/>
<Rectangle Name="myRect" Width="1024" Height="500"/>
那么webview的静态内容就会像图片一样渲染到Rechtangle
中。您可以打印Rechtangle
代替。
对于打印,我建议您从您的应用程序中阅读打印。并且还有一个官方示例供您参考:UWP打印示例。