我有一个使用 WebBrowser 控件的 WP8 应用程序。在控件中,我正在加载图像,我希望它正好是手机的宽度。我对此有疑问。
在代码中,我得到了屏幕宽度和比例因子:
var initalWidth = Application.Current.Host.Content.ActualWidth;
var factor = Application.Current.Host.Content.ScaleFactor / 100.0;
var screenWidth = (initalWidth / factor).ToString();
然后我将 screenWidth 传递到我的 html,该 html 加载到浏览器控件中,该控件设置我的图像的宽度。
这是我看到的行为:
Lumia 520
initial width= 480
factor = 1
screenWidth = 480
期望的结果:图像恰好是手机的宽度。
鲁米亚 920
initial width= 480
factor = 1.6
screenWidth = 300
不良结果:图像对于屏幕来说太小了大约 80 像素。
我不明白为什么它在 520 上工作而不在 920 上工作。我在这里做错了吗?
在我使用的 HTML 代码中:
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
和
@-ms-viewport {
width: device-width;
}
最佳答案
我不确定你想要什么。因为你得到了正确的东西?如果你想让它们以像素为单位填充相同的空间,这就是现在正在发生的事情。如果你想让它们填充相同的相对空间,你不应该使用 scalefactor`?
关于c# - WP8 : Setting Image width to device width in Webbrowser Control,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23120945/