ElementWalker 类

允许从特定元素开始的模型的各种遍历。

继承层次结构

System.Object
  Microsoft.VisualStudio.Modeling.ElementWalker
    Microsoft.VisualStudio.Modeling.BreadthFirstRolePlayerFirstElementWalker
    Microsoft.VisualStudio.Modeling.DepthFirstElementWalker

命名空间:  Microsoft.VisualStudio.Modeling
程序集:  Microsoft.VisualStudio.Modeling.Sdk.12.0(在 Microsoft.VisualStudio.Modeling.Sdk.12.0.dll 中)

语法

声明
Public MustInherit Class ElementWalker
public abstract class ElementWalker

ElementWalker 类型公开以下成员。

构造函数

  名称 说明
受保护的方法 ElementWalker(IElementVisitor, IElementVisitorFilter) 采用 ElementVisitor 的构造函数。
受保护的方法 ElementWalker(IElementVisitor, IElementVisitorFilter, Boolean) 采用 ElementVisitor 的构造函数。

页首

属性

  名称 说明
公共属性 BypassDemandLoading 遍历时,允许查看器跳过要求的加载
公共属性 Filter 在遍历过程中,获取或设置可用的 IElementVisitorFilter
公共属性 IncludeLinks 如果查看器对访问器函数的调用包括元素链接则返回 true
公共属性 InternalElementList 获取将被访问元素的内部列表
公共属性 Store 获取将被访问元素的内部列表
公共属性 Visitor 在遍历过程中,获取或设置可用的 IElementVisitor

页首

方法

  名称 说明
公共方法 DoTraverse 遍历以指定开始元素开始的模型。
公共方法 Equals 确定指定的对象是否等于当前对象。 (继承自 Object。)
受保护的方法 Finalize 允许对象在“垃圾回收”回收之前尝试释放资源并执行其他清理操作。 (继承自 Object。)
公共方法 GetHashCode 作为默认哈希函数。 (继承自 Object。)
公共方法 GetType 获取当前实例的 Type。 (继承自 Object。)
受保护的方法 MarkForRemovalFromInternalElementList 标记撤除的一个元素从 InternalElementList。我们首先在末尾标记并稍后移除,以便索引保持有效。当元素标记为已参观时,我们将以哈希珍的形式存储索引,该表告诉我们该元素的访问顺序。如果这些元素按此顺序放置到 InternalElementList 中,则我们可以使用索引轻松找到该元素。是否没有线性搜索将用于查找元素。
受保护的方法 MarkVisited 标记已参观的元素
受保护的方法 MemberwiseClone 创建当前 Object 的浅表副本。 (继承自 Object。)
受保护的方法 RemoveMarkedElements 删除为撤除标记的元素。在遍历结束时调用,以便在 alreadyVisited 的索引保持有效。
公共方法 Reset 重置该访问器,以便可以再次开始遍历。这是必需清除一个内部列表之前参观的元素。
受保护的方法 ShouldVisitLinkAgain 如果在访问 currentElement(roleplayers 之一)之前访问该链接,则为 true。
公共方法 ToString 返回表示当前对象的字符串。 (继承自 Object。)
公共方法 Traverse(ModelElement) 遍历以指定开始元素开始的模型。
公共方法 Traverse(ICollection<ModelElement>) 遍历以指定开始元素开始的模型。
公共方法 Visited 确定给定的元素是否已访问。

页首

线程安全

此类型的任何公共 static(在 Visual Basic 中为 Shared) 成员都是线程安全的。但不保证所有实例成员都是线程安全的。

请参阅

参考

Microsoft.VisualStudio.Modeling 命名空间