ArcGIS AddIN开发异常之--修饰符“static”对该项无效
修饰符“static”对该项无效,
修饰符“internal”对该项无效.
该异常弹出的位置为Config.Designer.CS文件中相关插件的声明附近
internal static string Water_Info_Toolbar.AttributeBrushTool.AttributeBrushTool { get { return "llc3s@foxmail.com_Water_Info_Toolbar_AttributeBrushTool"; } }
类似的语句中,存在多处的这种修饰符无效的异常。这个文件为通过向导式新建插件时自动生成的,没有修改过。之前一直调试通过的,最近由于新建了一个工具,不知道出了什么问题,出现这个异常。
该异常不是所有的类似的语句都出现,部分比较短名称的语句就无此异常。如
internal static string SplitByAttribute {get {return "llc3s@foxmail.com_Water_Info_Toolbar_SplitByAttribute";}}
说明:由于工具分多次写的,之后做了一个工具条将所有的插件、代码放在了一个解决方案中,解决方案中包含一个AddIN的项目,一个辅助类的项目。如图:
简单的功能就直接在项目中建立,如ChangePolygon2Word.cs插件(该类较复杂,大部分内容在WaterInfoAssiter项目中做了封装,此处只调用即可),其他较复杂涉及较多内容的,则新建了一个文件夹,将相关的代码、窗体等放在一个统一的文件夹中。
经过对比发现,此处出现异常的,全部是放入文件夹中的插件,这些插件之前都有正常的运行过,原因未知。
解决方法:改名。
(1)将Config.Designer.CS文件中较长的名称改为短的,如AttributeBrushTool,
之前的名称Water_Info_Toolbar.AttributeBrushTool.AttributeBrushTool,
Water_Info_Toolbar为项目名称,
AttributeBrushTool为文件夹名称。以上较长的名称为VS根据插件存放的位置生成,新建插件名称时,只在向导中输入了AttributeBrushTool
(2)修改具体Config.esriaddinx 文件中关于插件的配置,将class改为短名称,Water_Info_Toolbar.AttributeBrushTool.AttributeBrushTool改为AttributeBrushTool,此处应该是指向具体实现后台逻辑的类
<Tool id="llc3s@foxmail.com_Water_Info_Toolbar_AttributeBrushTool" class="AttributeBrushTool" message="" caption="属性刷" tip="属性刷.Ctrl+左键,选择用以刷属性的源,选择之后可以在右侧的表中修改值.之后,点击希望刷属性的要素" category="Water_Info_Controls_llc" image="Images\AttributeBrushTool.png" cursor="Images\AttributeBrushTool.cur" />
(3)修改AttributeBrushTool.cs文件中Water_Info_Toolbar.AttributeBrushTool的命名空间,只保留Water_Info_Toolbar。保存即可
按照上述内容修改,异常可消除。
插件中包含一些窗体与panel时,也按照上述步骤修改。只不过需要多修改panel.designer.cs中相关的代码。
以上做法可以解决异常,原因未知,有知道的高手麻烦告知一下
转载于:https://www.cnblogs.com/DayDreamEveryWhere/p/4575314.html
ArcGIS AddIN开发异常之--修饰符“static”对该项无效相关推荐
- 【java基础面向对象】方法的重写、 package和import包、访问控制修饰符,static,final,static final,抽象方法
目录 1. 方法的重写(override/overriding):重新写.覆盖 2. package和import: 3. 访问控制修饰符:-----------------------保护数据的安全 ...
- 修饰符static、final、abstract与接口
前言:在易途学习的第十二天,时时刻刻提醒自己不要忘了来这里的目的,学好技术,2017年6月份找到一份满意的工作 面向对象高阶特征 访问权限修饰符 private:私有的 只有本类当中可以访问(defa ...
- 【ArcGIS Addin开发】No GUI components found in this Add-In. Add-In version does not match
今天使用的这个Addin工程是使用ArcObject10.6开发的,原本以为设置好visual stido版本,顺利编译就可以在ArcGIS Desktop里面打开的,可是事实却不是这样的.当添加es ...
- ArcGIS AddIN开发:如何调用ArcMap中的选择工作空间的窗体
示例代码如下: public static IWorkspaceName BrowseWorkspace(int hwnd,out IWorkspace ws){IGxObjectFilterColl ...
- JAVA基础-栈与堆,static、final修饰符、内部类和Java内存分配
JAVA基础-栈与堆,static.final修饰符.内部类和Java内存分配 发布时间: 2013/01/12 22:29 QQ空间 新浪微博 腾讯微博 人人网 豆瓣网 百度空间 百度搜藏 开心网 ...
- charat越界返回什么_Java基本语法方法修饰符返回类型参数列表异常列表
方法[method name] 定义 方法[method]是类的成员之一,(因为在java中,方法不能单独定义,它必须在类之中). 修饰符 返回类型 方法名()[throws 异常类型]{ //方法体 ...
- java(5)---static修饰符
static修饰符 static修饰符的特点: 1):static修饰的成员(字段/方法),随着所在类的加载而加载. 当JVM把字节码加载进JVM的时候,static修饰的成员已经在内存中存在了. 2 ...
- 10.0_[Java 封装]-抽象/封装/构造/重载/ static 修饰符
################################################## 目录 抽象编程 面向对象设计的过程 类和对象的关系 为什么使用面向对象 this 关键字 类的成员 ...
- private static final 修饰符
java修饰符分类修饰符字段修饰符方法修饰符根据功能同主要分下几种 1.权限访问修饰符 public,protected,default,private,四种级别修饰符都用来修饰类.方法和字段 包外 ...
最新文章
- 20分钟构建属于自己的 Linux 发行版
- vue 音乐盒app_VBox 一款基于vue开发的音乐盒 序章
- 2019大疆PC软件开发笔试——开关和灯泡两个电路板
- 一条命令扫描局域网所以IP地址和MAC地址
- SpringBoot整合AOP + 自定义注解实现简单的权限验证
- AD维护管理工具详解(一)dcdiag
- docker自动部署脚本
- 关于String类的split方法
- 微信抢票应用-个人总结
- Linux网络编程(Socket)(一)
- Java实现微信运动步数(已自测)
- 看过1000份算法简历,才明白人工智能、机器学习、深度学习!!!
- 图像属性——老照片特效
- c语言初学知识点,C语言学习关于数据类型的一些知识点(初学者)
- hexo博客kaze主题自定义社交链接
- 用计算机弹大白菜鸡毛菜,抖音大白菜鸡毛菜什么意思 大白菜鸡毛菜意思出处介绍...
- LED灯具耐压测试怎么做?耐压测试电压多少?
- 区块链与联邦学习的研究
- 一文查看公信宝查封始末,CEO此前曾表示获利数千万
- MODIS数据下载、拼接、转tif
热门文章
- python线程中再起线程_多线程 - Python中的线程化
- label mpchart 饼图_Origin系列:绘制柱状堆积图
- linux数据被删了怎么办
- datatables 一行数据生成两行_一行代码搞定分组回归
- 计算机文化基础教程问什么好难买到,问一个翻译的问题新编计算机文化基础(教程 – 手机爱问...
- vba 日期加一年_VBA究竟值不值得审计学?
- mysql有选择地输出数据_有条件地选择MYSQL列
- 【视频课】8小时系统性地掌握深度学习视频分类与行为识别理论+实践
- 【CV实战】年轻人的第一个GAN项目应该是什么样的(Pytorch框架)?
- 【通知】深度学习之模型设计书籍勘误汇总!附赠资源和代码开源问题