Virtual Earth VEShapeLayer не будет отображаться - PullRequest
0 голосов
/ 03 июня 2009

Цель: позволить пользователю включать и выключать разные слои данных; и динамически извлекать данные для текущего экстента из базы данных при событии перемещения карты.

Это отлично работает, если вы жестко закодируете свои VEShapeLayers, как сделано здесь .

Мой список слоев поступает из базы данных, у меня все работает так, как я хочу, за исключением того, что когда я добавляю фигуры в свой VEShapeLayer, на моей карте не отображается ни один. Вызов VEShapeLayer.GetShapeCount () возвращает ожидаемое число ... поэтому у слоя есть данные ..

Вот важные биты кода:

var assets = [];
if (WebServiceResult.length > 0) {
    for (var i = 0; i < WebServiceResult.length; i++) {
        var ix = FindLayerIndex(WebServiceResult[0].AssetMapLayer);
        var velatlong = new VELatLong();
        velatlong.Latitude = WebServiceResult[i].Latitude;
        velatlong.Longitude = WebServiceResult[i].Longitude;
        newShape = new VEShape(VEShapeType.Pushpin, velatlong);
        assets.push(newShape);
    }
    // ix is defined above and is vaild and correct
    map.GetShapeLayerByIndex(ix).AddShape(assets);
}
// a call here to map.GetShapeLayerByIndex(ix).GetShapeCount()     
// returns the expected number of shapes 

1 Ответ

0 голосов
/ 03 июня 2009

я чувствую себя тупым; Я не добавил таблицу стилей в заголовок своей страницы, и мой пользовательский значок стал прозрачным из-за недоступности таблицы стилей.

...