我正在尝试在WPF中的WebBrowser控件中运行的Google Map上包含scaleControl。
一切正常,除非我尝试启用scaleControl。它显示为白色框。 (见下文)
我正在按如下方式初始化地图:
var myOptions =
{
zoom: 2,
center: latlng,
mapTypeId: google.maps.MapTypeId.ROADMAP,
scaleControl: true
};
map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
如果单击白色矩形,它将更改大小(更改单位时如预期)。矩形的屏幕截图如下。
我相信这个问题可能与我在WPF WebBrowser元素中使用地图的事实有关。正如我在其他地方看到的这个问题一样,那也是在使用WPF。
关于如何正确显示此scaleControl的任何想法?
更新:
根据DormantOden的回答,我设法解决了问题,并使ScaleControl正常工作。
我进入注册表并添加了以下值:
HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Internet Explorer \ MAIN \ FeatureControl \ FEATURE_BROWSER_EMULATION \“我的应用程序名称” .exe
和
HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ Microsoft \ Internet Explorer \ MAIN \ FeatureControl \ FEATURE_BROWSER_EMULATION \“ MY APP NAME” .exe
我将值设置为0x2AF7,根据DormantOden's link,它导致WebBrowser控件以IE10(而不是IE7)运行。
现在,scaleControl可以正确呈现
最佳答案
我怀疑这是由于WPF WebBrowser元素默认使用旧版本的IE渲染所致。
有关如何指定所用IE版本的信息,请参见here。它可能会解决您的问题。