/// <summary>
        /// 添加书签
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnAddBookMark_Click(object sender, EventArgs e)
        {
            FormBookmark formBookmark = new FormBookmark();

            formBookmark.ShowDialog();
            string pName = string.Empty;

            pName = formBookmark.BookMark;
            if (!formBookmark.Check || string.IsNullOrEmpty(pName))
            {
                return;
            }

            // 书签进行重命名判断
            IMapBookmarks        mapBookmarks        = MainMapControl.Map as IMapBookmarks;
            IEnumSpatialBookmark enumSpatialBookmark = mapBookmarks.Bookmarks;

            enumSpatialBookmark.Reset();
            ISpatialBookmark spatialBookmark;

            while ((spatialBookmark = enumSpatialBookmark.Next()) != null)
            {
                if (pName == spatialBookmark.Name)
                {
                    DialogResult dr = MessageBox.Show("书签重命名,时候替换?", "提示", MessageBoxButtons.YesNoCancel);
                    switch (dr)
                    {
                    case DialogResult.Yes:
                        mapBookmarks.RemoveBookmark(spatialBookmark);
                        break;

                    case DialogResult.No:
                        formBookmark.ShowDialog();
                        break;

                    default:
                        return;
                    }
                }
            }
            // 获取当前地图的对象
            IActiveView activeView = MainMapControl.Map as IActiveView;
            // 创建一个新的书签并设置其位置为当前视图范围
            IAOIBookmark pBookmark = new AOIBookmark();

            pBookmark.Location = activeView.Extent;
            // 获得书签名称
            pBookmark.Name = pName;
            // 通过IMapBookmarks访问当前地图书签集,添加书签到地图的书签集中
            IMapBookmarks pMapBookmarks = MainMapControl.Map as IMapBookmarks;

            pMapBookmarks.AddBookmark(pBookmark);
        }
Пример #2
0
        private void 添加书签ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            bookmark frmbookmark = new bookmark();

            frmbookmark.ShowDialog();            //初始化一个书签管理窗口
            string pName = frmbookmark.Bookmark; //将书签名字赋给pName

            if (pName == "")
            {
                return;
            }

            IMapBookmarks        mapbookmarks         = axMapControl1.Map as IMapBookmarks; //访问当前书签集
            IEnumSpatialBookmark enumspatialbookmarks = mapbookmarks.Bookmarks;             //将当前的书签集赋给enumspatialbookmarks

            enumspatialbookmarks.Reset();
            ISpatialBookmark pspatialbookmarks;                               //创建一个空的空间书签

            while ((pspatialbookmarks = enumspatialbookmarks.Next()) != null) //循环判断名字是否已经存在
            {
                if (pName == pspatialbookmarks.Name)
                {
                    DialogResult dr = MessageBox.Show("此书签名已存在!是否替换?", "提示", MessageBoxButtons.YesNoCancel);
                    if (dr == DialogResult.Yes)
                    {
                        mapbookmarks.RemoveBookmark(pspatialbookmarks);
                    }
                    else if (dr == DialogResult.No)
                    {
                        frmbookmark.ShowDialog();
                    }
                    else
                    {
                        return;
                    }
                }
            }
            IActiveView  pactiveview = axMapControl1.Map as IActiveView;//获取当前地图对象
            IAOIBookmark pbookmark   = new AOIBookmark();

            pbookmark.Location = pactiveview.Extent;                          //创建一个书签并设置其位置为当前视图范围
            pbookmark.Name     = pName;                                       //获得书签名
            IMapBookmarks pmapbookmarks = axMapControl1.Map as IMapBookmarks; //访问当前书签集

            pmapbookmarks.AddBookmark(pbookmark);                             //添加新书签到地图的书签集中
        }
Пример #3
0
        /// <summary>
        /// 创建书签
        /// </summary>
        public Boolean CreatBookmark(string sBookmarkName)
        {
            Console.WriteLine(sBookmarkName);
            IAOIBookmark aoiBookmark = new AOIBookmark();

            if (aoiBookmark != null)
            {
                aoiBookmark.Location = mapControl.ActiveView.Extent;
                aoiBookmark.Name     = sBookmarkName;
            }

            IMapBookmarks bookmarks = mapControl.Map as IMapBookmarks;

            if (bookmarks != null)
            {
                bookmarks.AddBookmark(aoiBookmark);
                cmb_Bookmark.Items.Add(aoiBookmark.Name);
                return(true);
            }
            return(false);
        }