如何更改WinRT WebView的缩放级别?

如何更改WinRT WebView的缩放级别?,webview,zooming,windows-8,windows-runtime,Webview,Zooming,Windows 8,Windows Runtime,如何更改WinRT的缩放级别 如果我给它焦点,我可以使用键盘CTRL++和CTRL+- 但这可以通过代码来实现吗 注意:将WebView放在ScrollViewer中,并让它缩放,这不是我想要的。Hmmmm,好问题。我曾经研究过,它是可访问性API的一部分,为桌面和Metro应用程序提供编程缩放功能,但由于WebView是密封的,我担心它不会太有用。无论如何都要发布此信息,以防它帮助其他人取得进展 马格纳斯,出于好奇,为什么ScrollViewer解决方案不适合你 不幸的是,我认为没有一种方法可

如何更改WinRT的缩放级别

如果我给它焦点,我可以使用键盘
CTRL++
CTRL+-

但这可以通过代码来实现吗


注意:将WebView放在ScrollViewer中,并让它缩放,这不是我想要的。

Hmmmm,好问题。我曾经研究过,它是可访问性API的一部分,为桌面和Metro应用程序提供编程缩放功能,但由于WebView是密封的,我担心它不会太有用。无论如何都要发布此信息,以防它帮助其他人取得进展


马格纳斯,出于好奇,为什么ScrollViewer解决方案不适合你

不幸的是,我认为没有一种方法可以直接在托管代码中实现。但是,如果您拥有内容或可以插入一些css/脚本,则有一个解决方法

在HTML中,添加以下css:


身体
{
变焦:100%;
}
在HTML中还包括如下脚本块:

函数setZoomLevel(新建缩放){
document.styleSheets[0]['rules'][0]。style['zoom']=newZoom;
}
在C#代码中,添加一个助手方法:

private void SetZoomLevel(整数级)
{
string slevel=string.Format(“{0}%”,level);
webBrowser.InvokeScript(“setZoomLevel”,slevel);
}
在C#代码中,您现在可以通过调用以下命令来调整缩放级别:

SetZoomLevel(200);
这是我能找到的最好的,不幸的是,如果你不能注入一种风格和一些脚本,它就不起作用

注意:尽管这与调整缩放滑块的方式几乎相同,但缩放滑块在桌面浏览器中不受影响。因此,如果调用SetZoomLevel(200)在上面,然后将滑块设置为200%,您将实际看到400%。这在WebView中不应该是一个问题,因为没有滑块

希望有人能想出更好的答案