通过外接程序在企业架构图中显示标记
本文关键字:显示 企业 程序 | 更新日期: 2023-09-27 17:58:30
我正在使用以下代码在Enterprise Architect(C#插件)中生成一个图:
using EA;
...
public int AddDiagram(string name)
{
Package treeSelectedPackage = repository.GetTreeSelectedPackage();
Diagram dgr = treeSelectedPackage.Diagrams.AddNew(name, "Extended::Requirements");
dgr.Update();
treeSelectedPackage.Diagrams.Refresh();
treeSelectedPackage.Update();
return dgr.DiagramID;
}
存储库是一个EA.Repository
-对象。
我可以向图中添加元素,但我需要打开图中标记/标记值的显示。在Enterprise Architect中,您可以通过以下方式启用它:
右键单击图表->属性…->选项卡"元素"->显示隔间:检查"标签"
我必须向上面的方法添加什么才能为新的图表启用它?
在Diagram
类中,图的某些属性可用于设置(例如ShowPackageContents
),而其他属性则不可用。元素标记属性是后者之一。
然而,还有两个附加属性封装了其他属性StyleEx
和ExtendedStyle
,它们分别对应于t_diagram
表的StyleEx
和PDATA
列。这两个都是读/写的,但它们的内容没有记录,因此不能保证布局不会从一个版本的EA更改到下一个版本(尽管在实践中你是安全的,因为EA通常非常善于保持向后兼容性)。
每个都是形式keyword=value;
,其中在大多数情况下,true/false的值为1或0。元素标记属性在ExtendedStyle
中,称为ShowTags
。
EA在创建关系图时设置所有这些属性,但您只想更改其中一个。因此,您需要创建包含Update()
调用的关系图,搜索ExtendedStyle
,用ShowTags=1;
替换ShowTags=0;
,然后再次调用Update()
。
您可能需要更新t_diagram表中的数据库"ShowTags=0;",使用repository。SQLQuery方法