一、 概述
本文介绍通过NET开发PDMS插件的方法
PDMS12.0开始支持net语音,可以用NET对PDMS数据库进行读写操作,以及窗口菜单界面的定制.首先我们要定义一个类实现IAddin接口
1 class Addin : IAddin 2 { 3 }
实现接口的Description和Name字段
1 public string Description 2 { 3 get { return "Addin Test"; } 4 } 5 6 public string Name 7 { 8 get { return "WeiTu.Addin"; } 9 } 10
实现2个函数
1 public void Start(ServiceManager serviceManager) 2 { 3 //此处为插件的入口函数 4 } 5 public void Stop(ServiceManager serviceManager) 6 { 7 }
通过Start函数的参数serviceManager获得菜单,命令,工具条的管理类
比如工具条管理类
CommandBarManager commandbarmanager = (CommandBarManager)serviceManager.GetService(typeof(CommandBarManager));
接下来我们要创建一个Command类的子类MyCommand
1 class MyCommand:Command 2 { 3 ServiceManager _serviceManager; 4 public MyCommand(ServiceManager serviceManager) 5 { 6 this.Key = "Aveva.Addin.MyCommand"; 7 _serviceManager = serviceManager; 8 } 9 public override void Execute() 10 { 11 //在这里编写命里的执行动作 12 13 base.Execute(); 14 } 15 }
MyCommand类的实例可以作为按钮的命里使用
1 MyCommand com = new MyCommand(serviceManager); 2 commandbarmanager.RootTools.AddButtonTool("AddinBtn", "Addin Test", null, com); 3 commandbarmanager.CommandBars["WTCommandbarKey"].Tools.AddTool("AddinBtn");
二、 插件注册加载
插件是dll文件,编写完成后,通过编辑DesignAddins.xml文件进行加载
<string>Myaddin</string>
三、 开发的工具
通过NET我开发了,一些插件供大家使用,可以在公众号中去下载
标签: PDMS, PML, PMLNET, C# 扫码微信公众号