Windows Phone 7 WebBrowser内容高度

时间:2011-05-23 08:38:07

标签: windows-phone-7 webbrowser-control

我想动态设置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>

pageWrapperbody的直接孩子。

1 个答案:

答案 0 :(得分:4)

尝试在Javascript中使用document.body.clientHeight。如果您在WebBrowser中构建所有内容,也可以更好地运行您的场景。您可以将图像放在HTML中,然后您可以为MediaElement添加一个静帧占位符图像,回调到C#并在需要时弹出一个真正的MediaElement。