没有合适的资源?快使用搜索试试~ 我知道了~
C#二次开发AutoCAD动态加载自定义菜单和命令 .pdf
需积分: 44 138 下载量 173 浏览量
2019-09-04
17:38:25
上传
评论 7
收藏 635KB PDF 举报
温馨提示
试读
15页
在AutoCAD二次开发过程中,一般都是开发自定义的命令,然后在菜单栏/工具栏/菜单面板中添加对应的菜单,通过点击菜单调用开发的命令。 对于实现以上问题,传统的做法就是在二次开发类库中开发一个命令方法,并且方法被标注为:[CommandMethod("XXX")],然后制作CUIX文件,在AutoCAD中加载命令所在的类库(dll)和CUIX文件,通过点击菜单调用命令。 当我们开发的命令较多,且需要根据场景显示不同的菜单的时候,传统的做法就非常麻烦了。且每次修改都要改代码,灵活性不高。所以我们就想通过动态配置,CAD每次启动时能动态的加载我们配置好的命令和菜单。 具体实现方法如附件内容所示!
资源推荐
资源详情
资源评论
C#二次开发 AutoCAD 动态加载自定义菜单和命令 西域雪狼 2019 年 9 月 4 日
C#二次开发 AutoCAD 动态加载自定义菜单和命令
在 AutoCAD 二次开发过程中,一般都是开发自定义的命令,然后在菜单栏/工具栏/菜单面板中添加对应的菜单,通过点击菜单调用开发的命令。
对于实现以上问题,传统的做法就是在二次开发类库中开发一个命令方法,并且方法被标注为:[CommandMethod("XXX")],然后制作 CUIX 文件,在
AutoCAD 中加载命令所在的类库(dll)和 CUIX 文件,通过点击菜单调用命令。
当我们开发的命令较多,且需要根据场景显示不同的菜单的时候,传统的做法就非常麻烦了。且每次修改都要改代码,灵活性不高。所以我们就想
通过动态配置,CAD 每次启动时能动态的加载我们配置好的命令和菜单。
一,自动加载自定义菜单的实现方法:
1, 先在 CAD 中开发一个配置工具,配置好已开发的命令。如下图所示:
C#二次开发 AutoCAD 动态加载自定义菜单和命令 西域雪狼 2019 年 9 月 4 日
【命令标识】为 CAD 中执行当前命令的快捷命令;
【程序集】为实现当前命令的 dll,【 命令类】为实现当前命令的类的全名称。在调用当前命令时可通过反射实现。(关于为什么使用反射来调用命令,
在后面说明)。
【图标】表示显示到 AutoCAD 界面上的的图标,可以选择本地的一个图片文件。
配置好后显示到 AutoCAD 中的效果如下图所示:
2, 实现读取已配置的命令的方法
private static Dictionary<string, List<CommandModel>> readConfigCommands()
{
var dic = new Dictionary<string, List<CommandModel>>();
/*
* 实现从配置文件中读取已配置命令的方法
*
* CommandModel为自定义的命令对象,对象中属性与配置界面的对应。
*
*/
C#二次开发 AutoCAD 动态加载自定义菜单和命令 西域雪狼 2019 年 9 月 4 日
return dic;
}
//自定义的命令对象类
public class CommandModel
{
public string Name { get; set; }
public string DisplayName { get; set; } = "";
public string Description { get; set; } = "";
public string AssemblyName { get; set; } = "";
public string ClassName { get; set; } = "";
public string MethodName { get; set; } = "";
/// <summary>
/// 图标名称
/// </summary>
public string ImageName { get; set; } = "";
/// <summary>
/// 命令的显示方式
/// </summary>
public CommandDisplayStyle DisplayStyle { get; set; } = CommandDisplayStyle.图标文本;
/// <summary>
/// 指示是否显示为大图标
/// </summary>
public bool ShowLargeImage { get; set; } = false;
/// <summary>
/// 指示在当前命令之后是否显示分隔符
/// </summary>
剩余14页未读,继续阅读
资源评论
西域_雪狼
- 粉丝: 10
- 资源: 7
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功