ShapeElement 类
表示图中的图或形状。 ShapeElements 封装模型元素的可视化表示形式。
继承层次结构
System.Object
Microsoft.VisualStudio.Modeling.ModelElement
Microsoft.VisualStudio.Modeling.Diagrams.PresentationElement
Microsoft.VisualStudio.Modeling.Diagrams.ShapeElement
Microsoft.VisualStudio.Modeling.Diagrams.LinkShape
Microsoft.VisualStudio.Modeling.Diagrams.NodeShape
命名空间: Microsoft.VisualStudio.Modeling.Diagrams
程序集: Microsoft.VisualStudio.Modeling.Sdk.Diagrams.12.0(在 Microsoft.VisualStudio.Modeling.Sdk.Diagrams.12.0.dll 中)
语法
声明
<DisplayNameResourceAttribute("Microsoft.VisualStudio.Modeling.Diagrams.ShapeElement.DisplayName", _
GetType(CoreDesignSurfaceDomainModel), "Microsoft.VisualStudio.Modeling.Diagrams.GeneratedCode.DomainModelResx")> _
<DescriptionResourceAttribute("Microsoft.VisualStudio.Modeling.Diagrams.ShapeElement.Description", _
GetType(CoreDesignSurfaceDomainModel), "Microsoft.VisualStudio.Modeling.Diagrams.GeneratedCode.DomainModelResx")> _
<DomainModelOwnerAttribute(GetType(CoreDesignSurfaceDomainModel))> _
<CLSCompliantAttribute(True)> _
<DomainObjectIdAttribute("ffb3d9f5-7a47-4e12-8501-0055bd018825")> _
Public MustInherit Class ShapeElement _
Inherits PresentationElement _
Implements IGeometryHost
[DisplayNameResourceAttribute("Microsoft.VisualStudio.Modeling.Diagrams.ShapeElement.DisplayName",
typeof(CoreDesignSurfaceDomainModel), "Microsoft.VisualStudio.Modeling.Diagrams.GeneratedCode.DomainModelResx")]
[DescriptionResourceAttribute("Microsoft.VisualStudio.Modeling.Diagrams.ShapeElement.Description",
typeof(CoreDesignSurfaceDomainModel), "Microsoft.VisualStudio.Modeling.Diagrams.GeneratedCode.DomainModelResx")]
[DomainModelOwnerAttribute(typeof(CoreDesignSurfaceDomainModel))]
[CLSCompliantAttribute(true)]
[DomainObjectIdAttribute("ffb3d9f5-7a47-4e12-8501-0055bd018825")]
public abstract class ShapeElement : PresentationElement,
IGeometryHost
ShapeElement 类型公开以下成员。
构造函数
名称 | 说明 | |
---|---|---|
![]() |
ShapeElement | 初始化 ShapeElement 类的新实例。 |
页首
属性
名称 | 说明 | |
---|---|---|
![]() |
AbsoluteBoundingBox | 相对于关系图测量的边框. |
![]() |
AbsoluteBoundingBoxToEnsureVisible | 获取 DiagramClientView.EnsureVisible 的绝对边界框矩形。 |
![]() |
AbsoluteCenter | 获取在形状中心的点。 |
![]() |
AccessibilityObject | 获取形状的新辅助功能对象。 |
![]() |
AccessibleDefaultActionDescription | 获取形状的默认操作说明。 |
![]() |
AccessibleDescription | 获取形状的描述。 |
![]() |
AccessibleHelp | 获取用于形状的帮助主题。 |
![]() |
AccessibleHelpTopicFileName | 获取用于形状的帮助主题。 |
![]() |
AccessibleHelpTopicId | 获取用于该形状的帮助主题 ID。 |
![]() |
AccessibleName | 获取形状的名称。 |
![]() |
AccessibleRole | 获取形状的角色。 |
![]() |
AccessibleState | 获取形状的状态。 |
![]() |
AccessibleValue | 获取形状的值。 |
![]() |
AllowsChildrenInSelection | 如果 true,形状的子类可以包含在当前的选择组。 |
![]() |
AllowsChildrenToResizeParent | 如果更改子形状的大小或位置时可以调整此形状的大小,则为 true。 |
![]() |
AllowsChildrenToShrinkParent | 如果为 true,形状将减少大小已适应在其子元素调整大小或移动时围绕其子元素。 |
![]() |
BackgroundBrushId | 获取用于绘制文本运行背景色的画笔 ID。 |
![]() |
BoundingBox | 相对于 ParentShape 的测量形状的边框。 |
![]() |
CanFocus | 获取形状并验证它是否可以接收该焦点。 |
![]() |
CanMove | 获取形状并验证用户是否可以移动它。 |
![]() |
CanSelect | 获取形状并验证用户是否可以选择它。 |
![]() |
Center | 获取在形状中心的点。 |
![]() |
ClassStyleSet | 获取形状的样式集。 |
![]() |
ClipWhenDrawingFields | 获取子形状并确认在绘制子形状时,其剪辑区域是否应设置为父形状的边界框。 |
![]() |
Decorators | 获取用于形状的装饰器的集合。 |
![]() |
DefaultShapeField | 获取默认形状,该形状是第一个可以接收焦点的形状。 |
![]() |
DefaultSize | 获取形状的默认大小。 |
![]() |
Diagram | 获取形状所属的关系图。 |
![]() |
EnsureVisiblePreference | 该形状的 EnsureVisible 方法的首选项。默认值是返回承载该形状图形的 VisiblePreference。 |
![]() |
Events | 获取形状的事件处理程序列表。 |
![]() |
GeometryBackgroundBrushId | 获取用于绘制文本运行几何图形背景色的画笔 ID。 |
![]() |
GeometryBoundingBox | 获取形状的边界框。 |
![]() |
GeometryHasFilledBackground | 获取形状并验证它是否绘制背景。 |
![]() |
GeometryHasOutline | 获取形状并验证它是否具有轮廓。 |
![]() |
GeometryHasShadow | 如果形状具有阴影,则为 true,否则为 false。 |
![]() |
GeometryOutlinePenId | 获取用于绘制图形轮廓的笔 ID。 |
![]() |
GeometryStyleSet | 获取形状的样式集。 |
![]() |
GridSize | 如果非零,则此形状及其子级将映射到此大小的栅格。ParentShape.GridSize 的默认值。 |
![]() |
HasChildren | 如果形状具有子形状,则为 true。 |
![]() |
HasCustomToolTip | 获取形状并验证它是否具有定义工具提示。 |
![]() |
HasDragOverToolTip | 获取形状并验证它是否具有工具提示。 |
![]() |
HasFilledBackground | 获取形状并验证它是否具有背景。 |
![]() |
HasHighlighting | 获取形状并验证它是否突出显示。 |
![]() |
HasOutline | 获取形状并验证它是否具有轮廓。 |
![]() |
HasShadow | 获取形状并验证它是否具有阴影。 |
![]() |
HasToolTip | 获取形状并验证它是否具有工具提示。 |
![]() |
Id | 获取元素的 ID。 (继承自 ModelElement。) |
![]() |
IsActive | 获取 IsActive 标志并验证该元素是否处于活动状态。 (继承自 ModelElement。) |
![]() |
IsDeleted | 获取 IsDeleted 标志并检查该元素是否已从该模型中删除。 (继承自 ModelElement。) |
![]() |
IsDeleting | 获取 IsDeleting 标志并验证该元素是否正在从该模型中删除。 (继承自 ModelElement。) |
![]() |
IsNestedChild | 如果该形状元素在 ParentShape 的 NestedChildShapes 中,则为 true。 |
![]() |
IsRelativeChild | 如果该形状元素在 ParentShape 的 RelativeChildShapes 中,则为 true。 |
![]() |
IsVisible | 如果 true,形状显示在关系图上;如果 false,它不会和布局和路由算法忽略它。另请参见 Hide() 和 Show()。 |
![]() |
LineAdjustAwayDefault | 获取形状并验证子链接形状是否应尝试排列,当将连接到同一形状时或设置值。 |
![]() |
LineAffinityDefault | 获取或设置其中链接形状应尝试对形状进行定位的目标位置。 |
![]() |
LineToLineClearance | 获取或设置此形状的子链接形状之间的距离。 |
![]() |
LineToNodeClearance | 获取或设置子链接形状和子节点形状之间的距离。 |
![]() ![]() |
MaximumShadowOffset | 获取形状形状阴影的最大偏移值。 |
![]() |
MaximumSize | 获取形状的最大尺寸。 |
![]() |
MinimumSize | 获取形状的最小大小。 |
![]() |
ModelElement | 获取或设置与表示层元素关联的模型元素。 (继承自 PresentationElement。) |
![]() |
NestedChildShapes | 该形状的一部分,并约束在该形状或图的边界之内显示的形状的列表。 |
![]() |
NestedShapesMargin | 获取形状外接矩形和内嵌节点形状之间的边距。 |
![]() |
NodeToNodeClearance | 获取或设置子节点形状之间的边距。 |
![]() |
OutlinePenId | 获取用于绘制形的轮廓的笔 ID。 |
![]() |
OutlinePenWidth | 获取形状的轮廓的宽度。 |
![]() |
PaintMoveableDecoratorSelectionLines | |
![]() |
ParentLink | 从形状到父级形状中获取关系实例。 |
![]() |
ParentShape | 获取形状元素的父级。若要显示图形,则形状或链接器必须具有父级。 |
![]() |
Partition | 获取或设置包含元素的 Partition。 (继承自 ModelElement。) |
![]() |
Perimeter | 获取形状的周边路径。 |
![]() |
RelatedShapeToEmphasize | 当选择该形状时,获取相关形状以对用户形成直观强调。 |
![]() |
RelativeChildShapes | 该形状的一部分,但可以在该形状或图的边界之外显示的形状的列表。 |
![]() |
ShapeFields | 形状的部分如文本行和修饰器。 |
![]() |
ShapeGeometry | 获取形状的几何图形,如矩形、圆角矩形或椭圆,这些几何图形定义了与形状轮廓相关联的操作。 |
![]() |
ShouldTryParentShapeForMergeOnToolboxDoubleClick | 如果为 true,当用户双击一个带有选定的形状的工具箱项时,如果工具无法与此形状合并,那么将尝试与父形状的合并。默认为 true。 |
![]() |
Store | 获取包含元素的 Store。 (继承自 ModelElement。) |
![]() |
StyleSet | 获取为形状设置的样式的事例。 |
![]() |
Subject | 获取或设置表示元素的主题。默认为与 ModelElement 相同的对象。 (继承自 PresentationElement。) |
![]() |
TargetToolboxItemFilterAttributes | 获取决定哪个项在“工具箱”中被启用或者禁用的特性的集合。 |
![]() |
ZOrder | 确定相对于关系图中其他形状,该形状将显示的顺序。通常按子形状顺序设置。 |
页首
方法
页首
事件
名称 | 说明 | |
---|---|---|
![]() |
Click | 当用户单击鼠标在形状上时发生 |
![]() |
DoubleClick | 当用户双击鼠标时发生。 |
![]() |
KeyDown | 当用户按下任意键时发生。 |
![]() |
KeyPress | 当用户按下任意键并释放时发生。 |
![]() |
KeyUp | 当用户释放任意键时发生。 |
![]() |
MouseDown | 当用户按下鼠标按钮时发生。 |
![]() |
MouseMove | 当用户移动鼠标时发生。 |
![]() |
MouseUp | 当用户释放鼠标按钮时发生。 |
![]() |
MouseWheel | 在用户转动鼠标滚轮时发生。 |
页首
扩展方法
名称 | 说明 | |
---|---|---|
![]() |
AddExtension(Guid) | 已重载。 用被标识的域类型的一新的实例扩展此 ModelElement。如果元素已具有该类型的扩展名,则将引发 InvalidOperationException。 (由 ModelElementExtensionMethods 定义。) |
![]() |
AddExtension(Type) | 已重载。 用指定类型的一新的实例扩展此 ModelElement。如果元素已具有该类型的扩展名,则将引发 InvalidOperationException。 (由 ModelElementExtensionMethods 定义。) |
![]() |
AddExtension(DomainClassInfo) | 已重载。 用指定域类型的一新的实例扩展此 ModelElement。如果元素已具有该类型的扩展名,则将引发 InvalidOperationException。 (由 ModelElementExtensionMethods 定义。) |
![]() |
AddExtension(ExtensionElement) | 已重载。 用一指定的扩展 扩展此 ModelElement。如果元素已具有相同类型的扩展名,则将引发 InvalidOperationException。 (由 ModelElementExtensionMethods 定义。) |
![]() |
AddExtension<T>() | 已重载。 用特定类型的一新的实例扩展此 ModelElement。如果元素已具有相同类型的扩展名,则将引发 InvalidOperationException。 (由 ModelElementExtensionMethods 定义。) |
![]() |
CanDelete | 从模型中删除元素。 (由 ImmutabilityExtensionMethods 定义。) |
![]() |
GetAllExtensions | 横跨嵌入在该 ModelElement 的扩展元素树来返回执行广度优先遍历的可枚举。 (由 ModelElementExtensionMethods 定义。) |
![]() |
GetBaseElement | 返回指定的 ModelElement 参与的虚拟 MEL 根。 (由 ModelElementExtensionMethods 定义。) |
![]() |
GetDslDefinitionModelElement | 此方法保证返回与 PresentationElement 对应的真实模型元素。 对于 DslDesigner PELs , 对应的主题实际上可以为内在的 TreeNode 类,而不是实际的 MEL。 此方法恰当地处理这些用例,以便返回实际的 MEL。 (由 PresentationElementHelper 定义。) |
![]() |
GetExtension(Guid) | 已重载。 (由 ModelElementExtensionMethods 定义。) |
![]() |
GetExtension(Type) | 已重载。 从此 ModelElement 可用扩展中获取指定类型的 ExtensionElement。如果该元素没有此类扩展名,则将引发 InvalidOperationException。 (由 ModelElementExtensionMethods 定义。) |
![]() |
GetExtension(DomainClassInfo) | 已重载。 (由 ModelElementExtensionMethods 定义。) |
![]() |
GetExtension<T>() | 已重载。 从此 ModelElement 可用扩展中获取指定类型的 ExtensionElement。如果该元素没有此类扩展名,则将引发 InvalidOperationException。 (由 ModelElementExtensionMethods 定义。) |
![]() |
GetLocks | 获取此元素的锁定标识。这将包括可在分区包含元素中启用的任何锁。 (由 ImmutabilityExtensionMethods 定义。) |
![]() |
IsExtendedBy(Guid) | 已重载。 询问该 ModelElement 当前是否由特定类型的 ExtensionElement 扩展。 (由 ModelElementExtensionMethods 定义。) |
![]() |
IsExtendedBy(Type) | 已重载。 询问该 ModelElement 当前是否由特定类型的 ExtensionElement 扩展。 (由 ModelElementExtensionMethods 定义。) |
![]() |
IsExtendedBy(DomainClassInfo) | 已重载。 询问该 ModelElement 当前是否由特定类型的 ExtensionElement 扩展。 (由 ModelElementExtensionMethods 定义。) |
![]() |
IsLocked | 测试此元素是否存在一组指定的锁 (由 ImmutabilityExtensionMethods 定义。) |
![]() |
RemoveExtension(Type) | 已重载。 移除属于特殊类型的该 ModelElement 的扩展名。 (由 ModelElementExtensionMethods 定义。) |
![]() |
RemoveExtension(Guid) | 已重载。 移除属于特殊类型的指定 ModelElement 的扩展名。 (由 ModelElementExtensionMethods 定义。) |
![]() |
RemoveExtension(DomainClassInfo) | 已重载。 移除属于特殊类型的指定 ModelElement 的扩展名。 (由 ModelElementExtensionMethods 定义。) |
![]() |
RemoveExtension(ExtensionElement) | 已重载。 从该 ModelElement 的扩展移除指定的 ExtensionElement。 (由 ModelElementExtensionMethods 定义。) |
![]() |
SetLocks | 设置此元素的锁定标识 (由 ImmutabilityExtensionMethods 定义。) |
![]() |
TryGetExtension(Guid) | 已重载。 (由 ModelElementExtensionMethods 定义。) |
![]() |
TryGetExtension(Type) | 已重载。 (由 ModelElementExtensionMethods 定义。) |
![]() |
TryGetExtension(DomainClassInfo) | 已重载。 (由 ModelElementExtensionMethods 定义。) |
![]() |
TryGetExtension<T>() | 已重载。 从此 ModelElement 可用扩展中获取指定类型的 ExtensionElement。如果钙元素没有此扩展,则结果为 NULL 。 (由 ModelElementExtensionMethods 定义。) |
页首
字段
名称 | 说明 | |
---|---|---|
![]() ![]() |
DomainClassId | 表示赋予在形状中的 ID。 |
页首
显式接口实现
名称 | 说明 | |
---|---|---|
![]() ![]() |
IMergeElements.CanMerge | 如果该元素可已与原型的内容合并则返回 true。 (继承自 ModelElement。) |
![]() ![]() |
IMergeElements.ChooseMergeTarget(ElementGroup) | (继承自 ModelElement。) |
![]() ![]() |
IMergeElements.ChooseMergeTarget(ElementGroupPrototype) | (继承自 ModelElement。) |
![]() ![]() |
IMergeElements.MergeConfigure | (继承自 ModelElement。) |
![]() ![]() |
IMergeElements.MergeDisconnect | (继承自 ModelElement。) |
![]() ![]() |
IMergeElements.MergeRelate | (继承自 ModelElement。) |
页首
备注
若要定位到形状表示的模型元素或关系,请使用 ModelElement。
重要子类型包括:
Diagram –表示形状和连接线的集合。 关系图的内容。.diagram 文件仍然存在。 如果在 DSL 的定义指定关系图选件类,它从此选件类派生。
NodeShape –表示具有非零区域的形状,不是连接。 如果在 DSL 的定义指定形状选件类,它们从 NodeShape 派生。
BinaryLinkShape –表示两 NodeShapes 之间的一行。 如果在 DSL 的定义中连接选件类,它们在此 BinaryLinkShape 派生。
有关详细信息,请参阅 [重定向] 如何:导航和更新图表。
线程安全
此类型的任何公共 static(在 Visual Basic 中为 Shared) 成员都是线程安全的。但不保证所有实例成员都是线程安全的。
请参阅
参考
Microsoft.VisualStudio.Modeling.Diagrams 命名空间