Arcgis pro SDK 关闭当前自定义的工具

这段代码是一个示例,用于关闭特定类型的工具并切换回探索工具。

代码首先获取当前工具,并将其转换为MapTool类型。然后,它定义了要关闭的工具类型。如果当前工具是要关闭的工具类型,则进行下一步操作。

在异步任务中,代码使用FrameworkApplication.SetCurrentToolAsync(null)方法将当前工具设置为null,以停用当前工具。

然后,它使用FrameworkApplication.SetCurrentToolAsync("esri_mapping_exploreTool")方法将探索工具(esri_mapping_exploreTool)设为当前工具,以激活该工具。

          // 获取当前工具
            MapTool currentTool = FrameworkApplication.ActiveTool as MapTool;

            // 找到要关闭的工具类型
            Type toolType = typeof("");
            // 如果当前工具是要关闭的工具类型,则关闭它
            if (currentTool != null && currentTool.GetType() == toolType)
            {
                QueuedTask.Run(() => {
                    // 将鼠标光标恢复为手掌光标
                    var systemCursor = System.Windows.Input.Cursors.Hand;
                    //currentTool.Cursor = systemCursor;
                    //// 将鼠标光标恢复为手掌光标
                    //Mouse.OverrideCursor = systemCursor;
                    FrameworkApplication.SetCurrentToolAsync(null);
                    FrameworkApplication.SetCurrentToolAsync("esri_mapping_exploreTool");
                });
            }

 

posted @ 2023-06-30 14:29  NeXT、  阅读(79)  评论(0)    收藏  举报