6 votos

¿Cómo conmutar la visibilidad de las capas en ArcObjects?

ILayer.Visible parece no tener efecto. ¿Cómo puedo gestionar manualmente la visibilidad de las capas y conseguir que el control del mapa se actualice?

ILayer lyr = mapControl.get_Layer(i);

//esto funciona para capas personalizadas que yo defino pero no para archivos Bing_Maps.lyr o ESRI .lyr que vienen con ArcEngine o conexiones a ArcGIS Online. Para las capas compuestas, también he intentado iterar a través de subcapas y establecer la visibilidad en false

lyr.Visible = false;
mapControl.Update();
mapControl.Refresh();
mapControl.ActiveView.Refresh();
mapControl.Invalidate();

12voto

Goldorak84 Puntos 893

Si utilizas un ITOCControl, puedes echar un vistazo a esta función ITOCControl.LayerVisibilityEdit Espero que esto ayude

2voto

Isaac Solomon Puntos 16554

Si la capa se añade a una capa de mapa base, es necesario notificar a la capa base que una capa ha cambiado para asegurarse de que vuelva a crear su caché de visualización: Acceso a una subcapa de mapa base

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X