MapLayerInfo类的代码

根据SKY的要求,特给出MapLayerInfo类的代码,很简单:

public class MapLayerInfo
    {
        private IFeatureLayer _FeatureLayer = null;
        private IMap _Map = null;
        //图层的属性
        private string _FeatLyrName = null;
        private bool _Cached = false;
        private string _DataSourceType = null;
        private string _DisplayField = null;
        private double _MaximumScale = 0;
        private double _MinimunScale = 0;
        private bool _ScaleSymbols = false;
        private bool _Selectable = false;
        private bool _Visible = false;
        private bool _ShowTips = false;

        public MapLayerInfo(IFeatureLayer pFeatLyr, IMap pMap)
        {
            this._FeatureLayer = pFeatLyr;
            this._Map = pMap;

            this._FeatLyrName = pFeatLyr.Name;
            this._DataSourceType = pFeatLyr.DataSourceType;
            this._DisplayField = pFeatLyr.DisplayField;
            this._MaximumScale = pFeatLyr.MaximumScale;
            this._MinimunScale = pFeatLyr.MinimumScale;
            this._Cached = pFeatLyr.Cached;
            this._ScaleSymbols = pFeatLyr.ScaleSymbols;
            this._Selectable = pFeatLyr.Selectable;
            this._Visible = pFeatLyr.Visible;
            this._ShowTips = pFeatLyr.ShowTips;
        }

        //使用[CategoryAttribute("图层基本信息"),DefaultValueAttribute(true)]可以使得该属性在
        //PropertyGrid中显示时出现在“图层基本信息”栏中
        [CategoryAttribute("图层基本信息"), DefaultValueAttribute(true)]
        public string Name
        {
            get { return this._FeatLyrName; }
            set
            {
                this._FeatLyrName = value;
                this._FeatureLayer.Name = this._FeatLyrName;
            }
        }
        [CategoryAttribute("图层基本信息"), DefaultValueAttribute(true)]
        public string DataSourceType
        {
            get { return this._DataSourceType; }
            set
            {
                this._DataSourceType = value;
                this._FeatureLayer.DataSourceType = this._DataSourceType;
            }
        }
        [CategoryAttribute("显示信息"), DefaultValueAttribute(true)]
        public string DisplayField
        {
            get
            {
                return this._DisplayField;
            }
            set
            {
                this._DisplayField = value;
                this._FeatureLayer.DisplayField = this._DisplayField;
            }
        }
        [CategoryAttribute("显示信息"), DefaultValueAttribute(true)]
        public double MaximumScale
        {
            get { return this._MaximumScale; }
            set
            {
                this._MaximumScale = value;
                this._FeatureLayer.MaximumScale = this._MaximumScale;
            }
        }
        [CategoryAttribute("显示信息"), DefaultValueAttribute(true)]
        public double MinimumScale
        {
            get { return this._MinimunScale; }
            set
            {
                this._MinimunScale = value;
                this._FeatureLayer.MinimumScale = this._MinimunScale;
            }
        }
        [CategoryAttribute("杂项"), DefaultValueAttribute(true)]
        public bool Cached
        {
            get { return this._Cached; }
            set
            {
                this._Cached = value;
                this._FeatureLayer.Cached = this._Cached;
            }
        }
        [CategoryAttribute("杂项"), DefaultValueAttribute(true)]
        public bool Selectable
        {
            get { return this._Selectable; }
            set
            {
                this._Selectable = value;
                this._FeatureLayer.Selectable = this._Selectable;
            }
        }
        [CategoryAttribute("杂项"), DefaultValueAttribute(true)]
        public bool ScaleSymbols
        {
            get { return this._ScaleSymbols; }
            set
            {
                this._ScaleSymbols = value;
                this._FeatureLayer.ScaleSymbols = this._ScaleSymbols;
            }
        }
        [CategoryAttribute("杂项"), DefaultValueAttribute(true)]
        public bool Visible
        {
            get { return this._Visible; }
            set
            {
                this._Visible = value;
                this._FeatureLayer.Visible = this._Visible;
                IActiveView pAV = (IActiveView)this._Map;
                pAV.PartialRefresh(esriViewDrawPhase.esriViewGeography, null, null);
            }
        }
        [CategoryAttribute("杂项"), DefaultValueAttribute(true)]
        public bool ShowTips
        {
            get { return this._ShowTips; }
            set
            {
                this._ShowTips = value;
                this._FeatureLayer.ShowTips = this._ShowTips;
            }
        }
    }

posted on 2008-12-04 10:34  浩淼  阅读(448)  评论(1编辑  收藏  举报

导航