如何更改WinRT
Webview的缩放级别?
如果我给它焦点,我可以使用键盘CTRL和CTRL放大/缩小 –
但这可以通过代码实现吗?
注意:将WebView放在ScrollViewer中,让缩放,不是我想要的.
解决方法
不幸的是,我认为没有办法直接在托管代码中执行此操作.但是,如果您拥有内容或者可以注入一些css /脚本,则有一种解决方法.
在您的HTML中,添加此css:
<style type="text/css"> body { zoom:100%; } </style>
在你的HTML中还包括一个这样的脚本块:
function setZoomLevel(newZoom) { document.styleSheets[0]['rules'][0].style['zoom'] = newZoom; }
private void SetZoomLevel(int level) { string slevel = string.Format("{0}%",level); webBrowser.InvokeScript("setZoomLevel",slevel); }
SetZoomLevel(200);
这是我能找到的最好的,不幸的是,如果你不能注入一个样式和一些脚本它就行不通.
注意:虽然这确实缩放内容的方式与调整缩放滑块非常相似,但桌面浏览器中的缩放滑块不受影响.因此,如果你调用SetZoomLevel(200);上面然后将滑块设置为200%,你实际上会看到400%.这应该不是WebView中的问题,因为没有滑块.
希望有人能提出更好的答案.