基本使用
- 新建类库项目
PdmsAddin
- 引入以下PMDS程序集(在PDMS安装目录下可以找到)
Aveva.ApplicationFramework.dl
Aveva.ApplicationFramework.Presentation.dll
- 新建
PdmsAddin
类 ,添加如下代码
1 | public class PdmsAddin : IAddin |
- 生成解决方案,将生成的
PdmsAddin.dll
文件拷贝到PMDS安装路径下的MyAddins
目录下 - 编辑PDMS安装目录下的
DesignAddins.xml
,添加一条如下记录
1 | <string>MyAddins\PdmsAddin</string> |
停靠窗口
- 新建
DockedWindowCmd
类,添加如下代码
1 | public class DockedWindowCmd : Command |
- 修改
PdmsAddin
类内容如下
1 | public class PdmsAddin : IAddin |
- 重新生成解决方案,将生成的
PdmsAddin.dll
文件拷贝到PMDS安装路径下的MyAddins
目录下 - 编辑PDMS安装目录下的
DesignAddins.xml
,添加一条如下记录
1 | <string>MyAddins\PdmsAddin</string> |
- 在PMDS安装目录下新建
MyUIC
目录,将PDMS根目录下的design.uic
文件拷贝一份到MyUIC
目录,编辑内容如下(删掉多余内容即可)
1 |
|
- 编辑PDMS安装目录下的
DesignCustomization.xml
,添加一条如下记录
1 | <CustomizationFileFile Name="MyAddin" Path="MyUIC\MyDesignUic.uic"> |
-
启动PDMS,在菜单栏空白处右键点击最底下的
Customize...
菜单,弹出Customize
窗口- 将
Active Customization File
下拉框切换为MyAddin
- 选中
Command Bars
菜单项,右键选择New CommandBar
- 右侧可修改
CommandBar1
菜单项的相关信息,例如将Caption改为MyPdmsAddin,将Name改为MyAddin.MyPdmsAddin - 在侧边工具栏点击倒数第四个图标
New StateButton
新建带状态的按钮 - 右侧可修改
StateButton1
项的相关信息,例如将Caption改为DockedWindow,将Name改为MyAddin.DockedWindow,将DisplayStyle改为TextOnlyAlways - 最后还需为StateButton设置Command,还是在右侧,点击
Command
项,在弹出的窗口中找到要绑定的命令的Key,例如DockedWindowCmd
的Key为PdmsAddin.DockedWindowCmd
- 将新建的
StateButton
(DockedWindow)拖动到CommandBar
下 - 修改完成后,点击
Apply
应用更改,关闭Customize
窗口后,即可看到工具栏中的DockedWindow
按钮
- 将
多文档窗口
- 新建
MdiWindowCmd
类,添加如下代码
1 | public class MdiWindowCmd : Command |
- 修改
PdmsAddin
类内容如下
1 | public class PdmsAddin : IAddin |
- 重新生成解决方案,将生成的
PdmsAddin.dll
文件拷贝到PMDS安装路径下的MyAddins
目录下 - 编辑PDMS安装目录下的
DesignAddins.xml
,添加一条如下记录
1 | <string>MyAddins\PdmsAddin</string> |
- 在PMDS安装目录下新建
MyUIC
目录,将PDMS根目录下的design.uic
文件拷贝一份到MyUIC
目录,编辑内容如下(删掉多余内容即可)
1 |
|
- 编辑PDMS安装目录下的
DesignCustomization.xml
,添加一条如下记录
1 | <CustomizationFileFile Name="MyAddin" Path="MyUIC\MyDesignUic.uic"> |
-
启动PDMS,在菜单栏空白处右键点击最底下的
Customize...
菜单,弹出Customize
窗口- 将
Active Customization File
下拉框切换为MyAddin
- 选中
Command Bars
菜单项,右键选择New CommandBar
- 右侧可修改
CommandBar1
菜单项的相关信息,例如将Caption改为MyPdmsAddin,将Name改为MyAddin.MyPdmsAddin - 在侧边工具栏点击倒数第四个图标
New StateButton
新建带状态的按钮 - 右侧可修改
StateButton1
项的相关信息,例如将Caption改为MdiWindow,将Name改为MyAddin.MdiWindow,将DisplayStyle改为TextOnlyAlways - 最后还需为StateButton设置Command,还是在右侧,点击
Command
项,在弹出的窗口中找到要绑定的命令的Key,例如MidWindowCmd
的Key为PdmsAddin.MdiWindowCmd
- 将新建的
StateButton
(MdiWindow)拖动到CommandBar
下 - 修改完成后,点击
Apply
应用更改,关闭Customize
窗口后,即可看到工具栏中的MdiWindow
按钮
- 将
模态窗口
- 引用程序集
- Aveva.Pdms.Database.dll
- 新建
MdiWindowCmd
类,添加如下代码
1 | public class DialogWindowCmd : Command |
- 修改
PdmsAddin
类内容如下
1 | public class PdmsAddin : IAddin |
- 重新生成解决方案,将生成的
PdmsAddin.dll
文件拷贝到PMDS安装路径下的MyAddins
目录下 - 编辑PDMS安装目录下的
DesignAddins.xml
,添加一条如下记录
1 | <string>MyAddins\PdmsAddin</string> |
- 在PMDS安装目录下新建
MyUIC
目录,将PDMS根目录下的design.uic
文件拷贝一份到MyUIC
目录,编辑内容如下(删掉多余内容即可)
1 |
|
- 编辑PDMS安装目录下的
DesignCustomization.xml
,添加一条如下记录
1 | <CustomizationFileFile Name="MyAddin" Path="MyUIC\MyDesignUic.uic"> |
-
启动PDMS,在菜单栏空白处右键点击最底下的
Customize...
菜单,弹出Customize
窗口- 将
Active Customization File
下拉框切换为MyAddin
- 选中
Command Bars
菜单项,右键选择New CommandBar
- 右侧可修改
CommandBar1
菜单项的相关信息,例如将Caption改为MyPdmsAddin,将Name改为MyAddin.MyPdmsAddin - 在侧边工具栏点击倒数第四个图标
New StateButton
新建带状态的按钮 - 右侧可修改
StateButton1
项的相关信息,例如将Caption改为DialogWindow,将Name改为MyAddin.DialogWindow,将DisplayStyle改为TextOnlyAlways - 最后还需为StateButton设置Command,还是在右侧,点击
Command
项,在弹出的窗口中找到要绑定的命令的Key,例如DialogWindowCmd
的Key为PdmsAddin.DialogWindowCmd
- 将新建的
StateButton
(MdiWindow)拖动到CommandBar
下 - 修改完成后,点击
Apply
应用更改,关闭Customize
窗口后,即可看到工具栏中的DialogWindow
按钮
- 将
事件
UserChanges
1 | public void Start(ServiceManager serviceManager) |
运用工具栏组件
- 引用程序集
- Aveva.Pdms.Geometry.dll
- Aveva.Pdms.Shared.dll
- 新建以下三个类
1 | public class TboxCmd : Command |
1 | public class ComBoxCmd : Command |
1 | public class CreateEquiCmd : Command |
- 验证输入合法性(可选),新建
ValidationRules
类,内容如下
1 | public class ValidationRules |
- 修改
PdmsAddin
类内容如下
1 | public class PdmsAddin : IAddin |
- 重新生成解决方案,将生成的
PdmsAddin.dll
文件拷贝到PMDS安装路径下的MyAddins
目录下 - 编辑PDMS安装目录下的
DesignAddins.xml
,添加一条如下记录
1 | <string>MyAddins\PdmsAddin</string> |
- 在PMDS安装目录下新建
MyUIC
目录,将PDMS根目录下的design.uic
文件拷贝一份到MyUIC
目录,编辑内容如下(删掉多余内容即可)
1 |
|
- 编辑PDMS安装目录下的
DesignCustomization.xml
,添加一条如下记录
1 | <CustomizationFileFile Name="MyAddin" Path="MyUIC\MyDesignUic.uic"> |
-
启动PDMS,在菜单栏空白处右键点击最底下的
Customize...
菜单,弹出Customize
窗口- 将
Active Customization File
下拉框切换为MyAddin
- 选中
Command Bars
菜单项,右键选择New CommandBar
- 右侧可修改
CommandBar1
菜单项的相关信息,例如将Caption改为MyPdmsAddin,将Name改为MyAddin.CommandBarEqui - 新建文本框,修改以下信息
- Caption: Name:
- Command: PdmsAddin.TboxCmd
- DisplayStyle: TextOnlyAlways
- Name: MyAddin.TxtName
- 新建下拉框,修改以下信息
- Caption: Desc:
- Command: PdmsAddin.ComBoxCmd
- DisplayStyle: TextOnlyAlways
- Name: MyAddin.ComBoxDesc
- 新建按钮,修改以下信息
- Caption: Create
- Command: PdmsAddin.CreateEquiCmd
- DisplayStyle: ImageAndText
- Icon : Shared:EQUI (Resource Files菜单下的Shared菜单中的Icons选项卡可看到图标)
- Name: MyAddin.BtnCreate
- 三个控件都要拖到CommandBar下
- 修改完成后,点击
Apply
应用更改,关闭Customize
窗口,即可看到表单
- 将
-
注意新建Equi后CurrentElement会变,需要重新选择CurrentElement(不能在EQUI下新建EQUI)
NetGridControl
- 引用程序集
- GridControl.dll
- 新建一个名为
NetGridAddinControl
的Winform用户控件,其中上下结构包含一个Panel和Button,代码如下
1 | public partial class NetGridAddinControl : UserControl |
- 新建
GridCmd
类内容如下
1 | public class GridCmd : Command |
Customize
添加一个State Button
绑定GridCmd
即可
过滤器
TypeFilter
1 | private void CollTypeFilter() |
AttributeUnsetFilter
1 | private void CollUnsetFilter() |
AttributeRefFilter
1 | private void CollUnsetFilter() |
AndFilter
1 | private void CollAndFilter() |
操作PML变量
设置PML变量
1 |
|
获取PML变量
1 |
|
DatatableReference
1 | using Command = Aveva.Pdms.Utilities.CommandLine.Command; |
独立运行
- 新建控制台应用程序
TestPdmsStandalone
- 引用如下程序集
Aveva.Pdms.Database.dll
Aveva.Pdms.Standalone.dll
Aveva.Pdms.Utilities.dll
- 编辑
Program
内容如下:
1 | class Program |
- 将应用程序改为
x86
平台(必须) - 将生成的exe应用拷贝到Pdms安装目录
- 拷贝一份Pdms安装目录下的
pdms.bat
重命名为RunPdmsStandalone.bat
- 编辑
RunPdmsStandalone.bat
,滚动到内容末尾
1 | # 使用rem注释下面三行 |
- 运行
RunPdmsStandalone.bat
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 生活中的tree!