我想动态设置WebBrowser
控件的高度,具体取决于内容高度。
我的场景是:在该特定视图中,我有不同的元素 - 一个Image,MediaElement等,以及在该WebBrowser控件中显示的那些富文本之间。为了实现统一滚动,我已将所有内容包装在滚动视图中,并禁止在webbrowser控件上滚动。
目前我有一个JavaScript
方法,当主体完成加载后调用该方法并将高度信息发送到C#
代码隐藏但计算的高度不正确。
今天我的黑客基本上将返回值乘以 1.75 。
在页眉中我有以下元标记:
<meta charset='Windows-1257'>
<meta name='viewport' content='width=device-width' />
<meta name='viewport' content='user-scalable=no' />
<meta name='viewport' content='initial-scale = 1.0' />
<meta name='HandheldFriendly' content='true' />"
<meta name='target-densitydpi=device-dpi' />
这是我的body
标记。
<body onLoad="SendDataToPhoneApp()" style="margin:0px;padding:0px;">
我的JavaScript
功能:
<script>
function getDocHeight() {
return document.getElementById('pageWrapper').offsetHeight;
}
function SendDataToPhoneApp() {
window.external.Notify('' + getDocHeight());
}
</script>
pageWrapper
是body
的直接孩子。
答案 0 :(得分:4)
尝试在Javascript中使用document.body.clientHeight。如果您在WebBrowser中构建所有内容,也可以更好地运行您的场景。您可以将图像放在HTML中,然后您可以为MediaElement添加一个静帧占位符图像,回调到C#并在需要时弹出一个真正的MediaElement。