Платформа .Net (С#). На форме контролы TOCControl, AxMapControl. Создано дополнительно меню с пунктами CheckOnClick=true. Необходимо по событию OnMouseUp на TOCControl снимать/ставить chek на соответствующих пунктах меню, которые определяют видимость слоя.
Код:
IBasicMap map = new MapClass();
ILayer layer = new FeatureLayerClass();
object legendGroup = new object();
object index = new object();
esriTOCControlItem item = new esriTOCControlItem();
axTOCControl.GetSelectedItem(ref item, ref map, ref layer, ref legendGroup, ref index);
if (item == esriTOCControlItem.esriTOCControlItemLayer)
if (axMapControl.get_Layer(i).Name=="Built")
{
fieldLevelToolStripMenuItem1.Checked = axMapControl.get_Layer(i).Visible;
и т.д. ...
}
Но дело в том, что метод GetSelectedItem возвращает слой, по которому произошел клик, но при этом не обязательно изменилось свойство Visible слоя.
Как отловить именно изменение видимости слоев?