ARCEngine中单击图层得到图层索引

        private void axTOCControl1_OnMouseDown(object sender, ESRI.ArcGIS.Controls.ITOCControlEvents_OnMouseDownEvent e)
        {
             esriTOCControlItem item = esriTOCControlItem.esriTOCControlItemNone;
            IBasicMap map = null; ILayer layer = null;
            object other = null; object index = null;
            this.axTOCControl1.HitTest(e.x, e.y, ref item, ref map, ref layer, ref other, ref index);
            if (e.button == 1) {
                if (item == esriTOCControlItem.esriTOCControlItemLayer)
                {

                    IFeatureLayer layerS;
                    layerS = layer as IFeatureLayer;

                    int featureLayerIndex = -1;
                    for (int i = 0; i < axMapControl1.Map.LayerCount; i++)
                    {
                        string layer_name = axMapControl1.Map.get_Layer(i).Name.ToString();
                        if (layer_name == layerS.Name)
                        {
                            featureLayerIndex = i;

                        }
                    }
                    MessageBox.Show(layerS.Name + "图层的索引是:" + featureLayerIndex);

                }
            }
        }

 

猜你喜欢

转载自blog.csdn.net/qq_40323256/article/details/85116734