Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/292.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 展开Enterprise Architect中的所有子包_C#_Packages_Enterprise Architect - Fatal编程技术网

C# 展开Enterprise Architect中的所有子包

C# 展开Enterprise Architect中的所有子包,c#,packages,enterprise-architect,C#,Packages,Enterprise Architect,我正在从事企业架构师C#插件的工作。我正在项目浏览器中创建多个包和元素 我正在使用Repository.ShowInProjectView()API来关注项目浏览器中的一个元素。目前,我要求在元素创建完成后,扩展模型中第一个包的所有子包 是否有EA API可用于相同用途。请帮忙。提前谢谢 没有任何API调用可用于扩展project browser中的所有子包 正如@Arshad所说 您只需编写一个递归方法,对每个叶子包调用Repository.ShowInProjectView() 这就像(用元

我正在从事企业架构师C#插件的工作。我正在项目浏览器中创建多个包和元素

我正在使用
Repository.ShowInProjectView()
API来关注项目浏览器中的一个元素。目前,我要求在元素创建完成后,扩展模型中第一个包的所有子包


是否有EA API可用于相同用途。请帮忙。提前谢谢

没有任何API调用可用于扩展project browser中的所有子包

正如@Arshad所说

您只需编写一个递归方法,对每个叶子包调用
Repository.ShowInProjectView()

这就像(用元语言)

它将在包的所有子包中递归。当到达一个叶子时,它将用
Repository.ShowInProjectView
展开(当然还有它的所有父对象)

要关注包的第一个元素,请使用

Repository.ShowInProjectView(package.elements.getat(0))

当您在项目浏览器中显示子包时,子包不会展开,因此您必须使用子包的自有元素来强制它展开。@GeertBellekens这不是我要说的吗?不,我是说您必须进入元素级别才能展开所有包。如果只迭代包,则不会扩展最低级别的包@GeertBellekens@ThomasKilian谢谢..如果有多个包并且包中有元素..是否可以关注该包中可用的第一个元素。是的,这是可能的。但我猜你对此有点问题吧?请解释一下,谢谢。我需要关注模型中第一个包的第一个元素。使用Repository.ShowInProjectView()focus可以正确地处理新创建的元素,但它并不总是如上所述的第一个元素。
Repository.ShowInProjectView(package.elements.getat(0))