//根据layer名称获取IRasterDataset
        public IRasterDataset getIRasterDatasetByName(string layerName)
        {
            IEnumLayer enumLayer = this.m_mapControl.Map.Layers;
            enumLayer.Reset();
            ILayer layer = enumLayer.Next();
            while (layer != null)
            {
                if (layer.Name == layerName)
                {
                    IRasterLayer rl = (IRasterLayer)layer;
                    IRaster pRaster = rl.Raster;
                    IRasterBandCollection pRasterBandCollection = pRaster as IRasterBandCollection;
                    IRasterBand pRasterBand = pRasterBandCollection.Item(0);
                    IRasterDataset pRasterDataset = pRasterBand as IRasterDataset;
                    return pRasterDataset;
                }
                layer = enumLayer.Next();
            }
            return null;
        }
posted on 2015-08-12 09:25  agiser  阅读(1542)  评论(0)    收藏  举报