Esempio n. 1
0
        /// <summary>
        /// 节点Check事件,用于查询图层内容
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void advTreeMain_AfterCheck(object sender, AdvTreeCellEventArgs e)
        {
            Node checkNode = e.Cell.Parent;

            AbstractLayer lyr = this.GetLayerByName(checkNode.Text);

            //影像图层加载
            if (lyr == null)
            {
                string path = Path.Combine(Path.GetDirectoryName(_projectPath), checkNode.Text + ".xml");
                if (File.Exists(path) == false)
                {
                    return;
                }
                DomLayerInfo lyrInfo = XmlHelper.Deserialize <DomLayerInfo>(path);
                if (lyrInfo == null)
                {
                    return;
                }
                lyr = LayerLoader.CreateDomLyr(lyrInfo, _globeView);
            }
            if (lyr != null)
            {
                lyr.Visible = e.Cell.Checked;
            }
            //飞行
            if (e.Cell.Checked)
            {
                this.LocLyrByName(checkNode.Text);
            }
        }