可以将“创建”对话框和选项卡配置为显示自定义对象数据。
要求
为了支持自定义对象,需要以下三个组件:
创建 CustomObject


修改 mymenu.mnu 文件
在 mymenu.mnu 文件的两个部分中,您可以配置菜单选项。一个部分用于菜单选项“新建”。另一个部分用于菜单选项“编辑”。
“新建”菜单选项
item newCustomObject
{
.....
...
NavigationTypes = [{CustomObject}];
ToolbarPaintStyle = TextAndGlyph;
PSFile = "CreateCustomObject.ps1";
Image="NewCustomObject.ico";
}
“编辑”菜单选项
item editCustomObject
{
....
.....
NavigationTypes = [{CustomObject}];
ToolbarPaintStyle = TextAndGlyph;
PSFile = "EditCustomObject.ps1";
Image="EditCustomObject.ico";
}
这两部分的语法与其他菜单项的一样。但是,属性 NavigationTypes 包含您要用指定菜单选项支持的自定义对象的名称。自定义对象的名称必须输入在花括号中(例如 {CustomObjectName})。
默认情况下,将使用 {CustomObject}。但是,如果您创建了其他名称的自定义对象,例如 MyCustomObject,则 NavigationTypes 属性值必须与该自定义对象的名称 {MyCustomObject} 相匹配。
修改“创建”和“编辑”自定义对象脚本文件
根据 mymenu.mnu 文件中的具体部分,该文件中的菜单定义指向名为 CreateCustomObject.ps1 或 EditCustomObject.ps1 的 PowerShell 文件。用于创建和编辑自定义对象的脚本文件与用于创建和编辑其他对象(例如文件和文件夹)的脚本类似。但是,用于创建和编辑自定义对象的脚本包含两个唯一的命令:GetCreateCustomObjectDialog 和 GetEditCustomObjectDialog。
与其他脚本类似,“创建”和“编辑”自定义对象脚本也指向关联的 .xaml 文件。可以编辑这些脚本以指向其他 .xaml 文件。
以下示例摘自 NewCustomObject.ps1 脚本。
.... $dialog = $dsCommands.GetCreateCustomObjectDialog($id) $xamlFile = New-Object CreateObject.WPF.XamlFile "CustomEntityXaml", "%ProgramData%\Autodesk\Vault 2015\Extensions\DataStandard\Vault\Configuration\CustomObject.xaml" ....
使用 XAML 模板创建自定义对象对话框和选项卡
.xaml 对话框的语法与其他对话框和选项卡的一样。对于“创建”和“编辑”对话框,随 CustomObject.xaml 一同提供了 XAML 模板。您可以使用此对话框模板来创建自己的自定义对象。
Vault 重新启动后,“Data Standard”对话框中的选项卡将显示自定义对象名称(该名称由自定义对象文件夹中的 XAML 文件决定)。默认情况下,名为 Datasheet.xml 的 XAML 文件已存在。使用此文件作为模板来创建您的自定义对象选项卡。