2014-07-23 2 views
0

Bing지도를 Lightswitch 시각적 스튜디오 프로젝트에 넣으려고 시도했으며 인터넷에서 내 자신의 데이터에 맞게 수정 한 코드를 발견했습니다. 그러나로드 할지도를 얻을 수는 있지만 내 데이터를 가져 오는 것 같지 않고 입력하는 위치와 반대로 바다 중앙에 무작위 지점을 표시합니다!Lightswitch에서 Javascript를 사용하여지도 컨트롤 구성

이 나는 ​​코드 발견 적응된다 http://technet.microsoft.com/en-ca/jj674624(v=vs.71).aspx

이 내가 놓친 거지 이해하지 않습니다

function rebindMap(element, contentItem) { 
// Verify that we aren't updating the map continuously due to multiple bound values changing. 
var now = new Date(); 
if (now.getTime() - mapLastUpdated.getTime() > 15) { 
    setTimeout(function() { 
     updateMap(element, contentItem); 
     mapLastUpdated = new Date(); 
    }, 20); 
} 
}; 

function updateMap(element, contentItem) { 
var mapDiv = $("#appointmentMap"); 
// If we've previously created the map, make sure to clean up the div that contained it; 
// otherwise, the Bing map control fails to create properly. 
if (mapDiv.length > 0) { 
    $(mapDiv).remove(); 
} 
mapDiv = $("<div id='appointmentMap' class='msls-hauto msls-vauto' ></div>"); 

$(mapDiv).appendTo($(element)); 
mapControl = mapDiv.lightswitchBingMapsControl({ 
    country: contentItem.value.Spatial_Data, 
    state: contentItem.value.State_Province, 
    postalcode: contentItem.value.Postal_Code, 
    address: contentItem.value.Address, 
    city: contentItem.value.City, 
    latitude: contentItem.value.Latitude, 
    longitude: contentItem.value.Longitude, 
    mapTypeId: Microsoft.Maps.MapTypeId.road, 


    height: "400" 
}); 
}; 



myapp.View_Retail.Site_Name1_render = function (element, contentItem) { 
    // Write code here. 
    updateMap(element, contentItem); 
    mapLastUpdated = new Date(); 
    contentItem.dataBind("value.country", function() { rebindMap(element, contentItem); }); 
    contentItem.dataBind("value.state", function() { rebindMap(element, contentItem); }); 
    contentItem.dataBind("value.postalcode", function() { rebindMap(element, contentItem); }); 
    contentItem.dataBind("value.address", function() { rebindMap(element, contentItem); }); 
    contentItem.dataBind("value.city", function() { rebindMap(element, contentItem); }); 
    contentItem.dataBind("value.latitude", function() { rebindMap(element, contentItem); }); 
    contentItem.dataBind("value.longitude", function() { rebindMap(element, contentItem); }); 
}; 

내가 Microsoft 웹 사이트의 코드를 가지고! 어떤 도움을 크게 감상 할 수 있도록 : 당신이 빙지도 제어 확장을 사용하여 테이블에서 맵 주소 속성을 만들고에 대한 쿼리를 작성 해달라고 왜

+0

위도/경도를 하드 코딩하여 바인딩 오류를 피하려고 했습니까? 또한 주소 데이터를 위도/경도로 전달하지 않고 시도해보십시오. – gimpy

+0

답장을 보내 주셔서 감사합니다. 경도와 위도를 코딩했지만 아무런 효과가 없었습니다. ( 예 : 예 : 변경됨 - contentItem.dataBind ("value.latitude", function() {rebindMap (element, contentItem);}); -이 contentItem.dataBind ("1", function() {rebindMap (element, contentItem);}); – Steve0303

+0

구현을 시도하십시오. http://msdn.microsoft.com/en-us/library/jj733572.aspx #지도 – gimpy

답변

0

을 나는 매우 자바 스크립트에 경험이 아니에요 그것은

result = Address1 + ", " + City + ", " + State + ", " + PostalCode; 
관련 문제