Compartment 类
在隔离舱形状中的隔离舱。
继承层次结构
System.Object
Microsoft.VisualStudio.Modeling.ModelElement
Microsoft.VisualStudio.Modeling.Diagrams.PresentationElement
Microsoft.VisualStudio.Modeling.Diagrams.ShapeElement
Microsoft.VisualStudio.Modeling.Diagrams.NodeShape
Microsoft.VisualStudio.Modeling.Diagrams.Compartment
Microsoft.VisualStudio.Modeling.Diagrams.ListCompartment
命名空间: Microsoft.VisualStudio.Modeling.Diagrams
程序集: Microsoft.VisualStudio.Modeling.Sdk.Diagrams.11.0(在 Microsoft.VisualStudio.Modeling.Sdk.Diagrams.11.0.dll 中)
语法
声明
<DomainModelOwnerAttribute(GetType(CoreDesignSurfaceDomainModel))> _
<DomainObjectIdAttribute("cf908511-03d6-4d10-b53a-dddc44d66a9a")> _
<DisplayNameResourceAttribute("Microsoft.VisualStudio.Modeling.Diagrams.Compartment.DisplayName", _
GetType(CoreDesignSurfaceDomainModel), "Microsoft.VisualStudio.Modeling.Diagrams.GeneratedCode.DomainModelResx")> _
<DescriptionResourceAttribute("Microsoft.VisualStudio.Modeling.Diagrams.Compartment.Description", _
GetType(CoreDesignSurfaceDomainModel), "Microsoft.VisualStudio.Modeling.Diagrams.GeneratedCode.DomainModelResx")> _
<CLSCompliantAttribute(True)> _
Public MustInherit Class Compartment _
Inherits NodeShape
[DomainModelOwnerAttribute(typeof(CoreDesignSurfaceDomainModel))]
[DomainObjectIdAttribute("cf908511-03d6-4d10-b53a-dddc44d66a9a")]
[DisplayNameResourceAttribute("Microsoft.VisualStudio.Modeling.Diagrams.Compartment.DisplayName",
typeof(CoreDesignSurfaceDomainModel), "Microsoft.VisualStudio.Modeling.Diagrams.GeneratedCode.DomainModelResx")]
[DescriptionResourceAttribute("Microsoft.VisualStudio.Modeling.Diagrams.Compartment.Description",
typeof(CoreDesignSurfaceDomainModel), "Microsoft.VisualStudio.Modeling.Diagrams.GeneratedCode.DomainModelResx")]
[CLSCompliantAttribute(true)]
public abstract class Compartment : NodeShape
Compartment 类型公开以下成员。
构造函数
名称 | 说明 | |
---|---|---|
Compartment | 初始化 Compartment 类的新实例。 |
页首
属性
名称 | 说明 | |
---|---|---|
AbsoluteBoundingBox | 形状的边框,测量相对关系图。 (继承自 NodeShape。) | |
AbsoluteBoundingBoxToEnsureVisible | 获取 DiagramClientView.EnsureVisible的绝对边框。 (继承自 ShapeElement。) | |
AbsoluteBounds | 获取或设置形状的边框大小和位置的字段的特性,测量相对左上角的关系图。 (继承自 NodeShape。) | |
AbsoluteCenter | 在图形中心获取点。 (继承自 ShapeElement。) | |
AccessibilityObject | 获取形状的可访问性对象。 (继承自 ShapeElement。) | |
AccessibleDefaultActionDescription | 获取形状的默认事件声明。 (继承自 ShapeElement。) | |
AccessibleDescription | 获取形状的说明。 (继承自 ShapeElement。) | |
AccessibleHelp | 获取形状的帮助。 (继承自 ShapeElement。) | |
AccessibleHelpTopicFileName | 获取形状的帮助主题。 (继承自 ShapeElement。) | |
AccessibleHelpTopicId | 获取帮助主题的 ID 形状的。 (继承自 ShapeElement。) | |
AccessibleName | 获取形状的名称。 (继承自 ShapeElement。) | |
AccessibleRole | 获取形状的角色。 (继承自 ShapeElement。) | |
AccessibleState | 获取形状的状态。 (继承自 NodeShape。) | |
AccessibleValue | 获取形状的值。 (继承自 ShapeElement。) | |
AllowCustomCompartmentFillColor | 获取或设置权限具有形状隔离舱的自定义背景色。 | |
AllowCustomTitleFillColor | 获取或设置权限具有隔离舱标题的自定义背景色。 | |
AllowsChildrenInSelection | 如果 true,形状的子级可以在当前选定组中。 (继承自 ShapeElement。) | |
AllowsChildrenToResizeParent | true ,如果形状的大小进行调整,当更改子形状的大小或位置。 (继承自 ShapeElement。) | |
AllowsChildrenToShrinkParent | 如果为 true,则此形状的大小将减小到适应在其子周围,当调整大小或移动。 (继承自 ShapeElement。) | |
Anchoring | 描述形状应如何确定和调整大小,当父形状移动和调整。修改返回的对象根据要求。 (继承自 NodeShape。) | |
AutoResizeParentOnBoundsChange | 获取子形状并验证是否应调整其父形状,在子形状的绝对区域更改时发生。 (继承自 NodeShape。) | |
BackgroundBrushId | 获取用于绘制形状的背景的画笔的 ID。 (继承自 ShapeElement。) | |
BackgroundGradientMode | 获取形状的背景渐变。 (继承自 NodeShape。) | |
BoundingBox | 获取形状的边框,测量相对 ParentShape。 (继承自 NodeShape。) | |
Bounds | 获取或设置形状的边框大小和位置的字段的特性,测量相对左上角 ParentShape。 (继承自 NodeShape。) | |
BoundsRules | 获取形状隔离舱的边界。 (重写 NodeShape.BoundsRules。) | |
CanExpandAndCollapse | 获取隔离舱形状并验证用户是否可以折叠和展开它。 (重写 NodeShape.CanExpandAndCollapse。) | |
CanFocus | 获取形状并验证它是否可以接收焦点。 (继承自 ShapeElement。) | |
CanMove | 获取隔离舱形状并验证用户是否可以移动它在关系图上。 (重写 ShapeElement.CanMove。) | |
CanResize | 获取形状并验证用户是否可以调整其大小。 (继承自 NodeShape。) | |
CanSelect | 获取形状并验证用户是否可以选择它。 (继承自 ShapeElement。) | |
Center | 在图形中心获取点。 (继承自 ShapeElement。) | |
ClassStyleSet | 获取该样式设置为形状。 (继承自 ShapeElement。) | |
ClipWhenDrawingFields | 获取子形状并验证是否应将其剪辑区域到父形状的边界框,在绘制时子形状。 (继承自 ShapeElement。) | |
CollapsedSize | 获取折叠的隔离舱形状的大小。 | |
CompartmentFillColor | 获取或设置隔离舱形状的背景色。 | |
CompartmentFillColorStorage | 通过使用存储的背景色,则获取或设置隔离舱形状的背景色。 | |
ConnectionPoints | 列出在联接会停止形状的周长点。默认情况下,形状没有连接点,并且,连接的任意位置在其范围可以终止。 (继承自 NodeShape。) | |
Decorators | 获取修饰器的集合形状的。 (继承自 ShapeElement。) | |
DefaultContainerMargin | 获取边距在父形状及其嵌套子元素形状之间。 (继承自 NodeShape。) | |
DefaultShapeField | 获取默认值形状,是第一个形状都可以接收焦点。 (继承自 ShapeElement。) | |
DefaultSize | 获取形状的默认大小。 (继承自 ShapeElement。) | |
Diagram | 获取形状属于的关系图。 (继承自 ShapeElement。) | |
EnsureVisiblePreference | EnsureVisible 方法的喜好形状的。默认值为返回承载形状的关系图的 VisiblePreference。 (继承自 ShapeElement。) | |
Events | 获取事件处理程序的列表形状的。 (继承自 ShapeElement。) | |
ExpandedSize | 获取扩展的隔离舱形状的大小。 | |
FixedFlags | 获取用于确定的标志形状是否固定在其在关系图的位置。 (继承自 NodeShape。) | |
ForwardEventsToParent | 获取或设置权限向前拖放,键,并且,从子隔离舱的鼠标事件模型到其父形状隔离舱。 | |
FromRoleLinkShapes | 获取的链接形状的集合形状是源。 (继承自 NodeShape。) | |
GeometryBackgroundBrushId | 获取用于绘制几何形状的背景画笔的 ID。 (继承自 ShapeElement。) | |
GeometryBoundingBox | 获取形状的边界框。 (继承自 ShapeElement。) | |
GeometryCanResizeBottom | 获取形状并验证用户是否可以垂直调整其大小,开始在底部。 (继承自 NodeShape。) | |
GeometryCanResizeLeft | 获取形状并验证用户是否可以水平调整其大小,启动左侧。 (继承自 NodeShape。) | |
GeometryCanResizeRight | 获取形状并验证用户是否可以水平调整其大小,启动右侧。 (继承自 NodeShape。) | |
GeometryCanResizeTop | 获取形状并验证用户是否可以垂直调整其大小,启动位于顶部。 (继承自 NodeShape。) | |
GeometryHasFilledBackground | 获取形状并验证其背景是否绘制。 (继承自 ShapeElement。) | |
GeometryHasOutline | 获取形状并验证它是否具有轮廓。 (继承自 ShapeElement。) | |
GeometryHasShadow | true ,则形状具有隐藏;否则, false。 (继承自 ShapeElement。) | |
GeometryOutlinePenId | 获取绘制形状的轮廓钢笔的 ID。 (继承自 ShapeElement。) | |
GeometryStyleSet | 获取该样式设置为形状。 (继承自 ShapeElement。) | |
GridSize | 如果非零,则形状及其子控件将在此范围网格。为 ParentShape.GridSize 的默认值。 (继承自 ShapeElement。) | |
HasAnchoring | ,如果在锚定,的设置为 true。 (继承自 NodeShape。) | |
HasBackgroundGradient | 获取形状并验证它是否具有其背景的一个渐变。 (继承自 NodeShape。) | |
HasChildren | true ,则形状具有子形状。 (继承自 ShapeElement。) | |
HasConnectionPoints | ConnectionPoints,如果列表不为空,则为 true。 (继承自 NodeShape。) | |
HasCustomToolTip | 获取形状并验证它是否具有自定义工具提示。 (继承自 ShapeElement。) | |
HasDragOverToolTip | 获取形状并验证它是否具有工具提示。 (继承自 ShapeElement。) | |
HasFilledBackground | 获取形状并验证它是否具有背景。 (继承自 ShapeElement。) | |
HasHighlighting | 获取隔离舱形状并验证它是否显示。 (重写 ShapeElement.HasHighlighting。) | |
HasOutline | 获取隔离舱形状并验证它是否具有轮廓在内容周围。 (重写 ShapeElement.HasOutline。) | |
HasShadow | 获取隔离舱形状并验证它是否具有在后的阴影。 (重写 ShapeElement.HasShadow。) | |
HasToolTip | 获取形状并验证它是否具有工具提示。 (继承自 ShapeElement。) | |
HeaderBackgroundField | 获取文本的背景在形状隔离舱头。 | |
HeaderBounds | 获取形状隔离舱头的区域。 | |
HeaderDisplayText | 获取形状隔离舱头的文本。 | |
HeaderPlusMinusField | 获取形状隔离舱的展开/折叠 V 形按钮 | |
HeaderTextField | 获取形状隔离舱头的文本字段。 | |
Id | 获取元素的 ID。 (继承自 ModelElement。) | |
IsActive | 获取 IsActive 标志并验证来确定该元素是否处于活动状态。 (继承自 ModelElement。) | |
IsDeleted | 获取 IsDeleted 标志并检查来确定该元素是否从模型中删除。 (继承自 ModelElement。) | |
IsDeleting | 获取 IsDeleting 标志并验证元素是否从模型当前被删除。 (继承自 ModelElement。) | |
IsExpanded | 获取形状并验证或将它是否展开。 (继承自 NodeShape。) | |
IsNestedChild | true ,则此形状元素在其 ParentShapeNestedChildShapes 。 (继承自 ShapeElement。) | |
IsPlaceRouteNode | ,如果可以调整,则为 true 形状的位置 (继承自 NodeShape。) | |
IsPort | true ,如果形状是端口形状;否则, false。 (继承自 NodeShape。) | |
IsRelativeChild | true ,则此形状元素在其 ParentShapeRelativeChildShapes 。 (继承自 ShapeElement。) | |
IsVisible | 如果 true,形状显示在关系图上;如果 false,它不会和布局和路由算法忽略它。请参见 Hide() 和 Show()。 (继承自 ShapeElement。) | |
LayoutObjectFixedFlags | 获取或设置确定的标志在关系图中的形状是否固定在其在关系图的位置。 (继承自 NodeShape。) | |
LineAdjustAwayDefault | 获取形状并验证子链接形状是否应尝试对齐,这会连接到同一形状时或设置此值。 (继承自 ShapeElement。) | |
LineAffinityDefault | 获取或设置指向形状应尝试定位形状的目标位置。 (继承自 ShapeElement。) | |
LineToLineClearance | 获取或设置子链接形状之间的距离形状的。 (继承自 ShapeElement。) | |
LineToNodeClearance | 获取或设置子链接形状和子节点形状之间的距离。 (继承自 ShapeElement。) | |
Link | 获取链接形状列表。 (继承自 NodeShape。) | |
Location | 获取或设置形状的区域的左上角坐标相对于其 ParentShape。 (继承自 NodeShape。) | |
MaximumSize | 获取形状的最大大小。 (继承自 ShapeElement。) | |
MinimumResizableSize | 获取形状的大小进行调整的最小尺寸。 (继承自 NodeShape。) | |
MinimumSize | 获取最小宽度和高度的形状隔离舱。 (重写 NodeShape.MinimumSize。) | |
ModelElement | 获取或设置与表示元素的模型元素。 (继承自 PresentationElement。) | |
Name | 获取或设置形状隔离舱的名称。 | |
NestedChildShapes | 是形状的一部分形状的列表,和约束此形状或关系图中区域中。 (继承自 ShapeElement。) | |
NestedShapesMargin | 获取边距在形状的边界框及其嵌套节点形状之间。 (继承自 ShapeElement。) | |
NodeToNodeClearance | 获取或设置在子节点形状之间的边距。 (继承自 ShapeElement。) | |
OutlinePenId | 获取用于绘制形状的轮廓钢笔的 ID。 (继承自 ShapeElement。) | |
OutlinePenWidth | 获取边框的宽度形状的。 (继承自 ShapeElement。) | |
PaintMoveableDecoratorSelectionLines | (继承自 ShapeElement。) | |
ParentLink | 从形状具有关系实例父形状。 (继承自 ShapeElement。) | |
ParentShape | 获取父形状元素。若要显示在关系图上,形状或连接必须具有父级。 (继承自 ShapeElement。) | |
Partition | 获取或设置一个元素的 Partition 。 (继承自 ModelElement。) | |
Perimeter | 在形状周围获取周长 (path)。 (继承自 ShapeElement。) | |
PortFixedFlags | 获取用于确定的标志端口形状是否固定在其位置。 (继承自 NodeShape。) | |
RelatedShapeToEmphasize | ,当形状时,获取相关形状以可视方式基础给用户。 (继承自 ShapeElement。) | |
RelativeChildShapes | 是形状的一部分形状的列表,但是,可以在该形状的边界显示。 (继承自 ShapeElement。) | |
ResizableSides | 获取用户可以调整形状大小的。 (重写 NodeShape.ResizableSides。) | |
ShapeFields | 形状的部分例如文本行和修饰器。 (继承自 ShapeElement。) | |
ShapeGeometry | 获取形状的几何图形,如矩形、 RoundedRectangle 或椭圆,定义操作与形状的轮廓。 (继承自 ShapeElement。) | |
ShouldAutoPlaceChildShapes | 获取形状并验证是否在关系图应自动确定其嵌套子元素形状。 (继承自 NodeShape。) | |
ShouldTryParentShapeForMergeOnToolboxDoubleClick | 如果为 true,则,当用户双击与选定的形状的一个 " 工具箱 " 项,因此,如果工具不能与形状合并,然后与父形状的组合将尝试。true 的默认值。 (继承自 ShapeElement。) | |
Size | 获取或设置形状的大小。 (继承自 NodeShape。) | |
Store | 获取包含元素的 Store 。 (继承自 ModelElement。) | |
StyleSet | 获取的形状设置样式的实例。 (继承自 ShapeElement。) | |
Subject | 获取或设置表示元素的主题。对对象的默认和 ModelElement相同。 (继承自 PresentationElement。) | |
TargetToolboxItemFilterAttributes | 获取用于确定属性的集合项在工具箱中启用还是禁用。 (继承自 ShapeElement。) | |
Title | 获取或设置形状隔离舱的标题。 | |
TitleFillColor | 获取或设置隔离舱形状标题的背景色。 | |
TitleFillColorStorage | 通过使用存储的背景色,则获取或设置隔离舱形状标题的背景色。 | |
TitleTextColor | 获取或设置 TitleTextColor 字段的特性的值。Microsoft.VisualStudio.Modeling.Diagrams.Compartment.Title 文本颜色的说明 | |
TitleVisibility | 获取隔离舱形状并验证前缀是否出现在它。 | |
ToRoleLinkShapes | 获取的链接形状的集合形状是目标。 (继承自 NodeShape。) | |
ZOrder | 确定此形状将显示相对于关系图的其他形状的顺序。通常设置从子级命令模型。 (继承自 ShapeElement。) |
页首
方法
页首
事件
名称 | 说明 | |
---|---|---|
AbsoluteBoundsChanged | ,当形状的绝对区域更改,发生。 (继承自 NodeShape。) | |
Click | ,当用户单击该形状,将鼠标发生。 (继承自 ShapeElement。) | |
DoubleClick | ,当用户双击鼠标,发生。 (继承自 ShapeElement。) | |
KeyDown | ,当用户按键,发生。 (继承自 ShapeElement。) | |
KeyPress | 发生,当用户按和版本键。 (继承自 ShapeElement。) | |
KeyUp | ,当用户松开键,发生。 (继承自 ShapeElement。) | |
MouseDown | ,当用户按下鼠标按钮,发生。 (继承自 ShapeElement。) | |
MouseMove | ,当用户移动鼠标,发生。 (继承自 ShapeElement。) | |
MouseUp | ,当用户松开鼠标按钮,发生。 (继承自 ShapeElement。) | |
MouseWheel | ,当用户滚动鼠标轮,发生。 (继承自 ShapeElement。) |
页首
扩展方法
名称 | 说明 | |
---|---|---|
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 参与虚拟麦的根。 (由 ModelElementExtensionMethods 定义。) | |
GetDslDefinitionModelElement | 此方法保证返回与 PresentationElement 对应的真实模型元素。 对于 DslDesigner PELs , 对应的主题实际上可以为内在的 TreeNode 类,而不是实际的 MEL。 此方法恰当地处理这些用例,以便返回实际的 MEL。 (由 PresentationElementHelper 定义。) | |
GetExtension(Guid) | 已重载。 (由 ModelElementExtensionMethods 定义。) | |
GetExtension(Type) | 已重载。 获取指定类型的 ExtensionElement 从此 ModelElement 可扩展的。如果元素没有此类扩展因此 InvalidOperationException 将引发。 (由 ModelElementExtensionMethods 定义。) | |
GetExtension(DomainClassInfo) | 已重载。 (由 ModelElementExtensionMethods 定义。) | |
GetExtension<T>() | 已重载。 获取指定类型的 ExtensionElement 从此 ModelElement 可扩展的。如果元素没有此类扩展因此 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>() | 已重载。 获取指定类型的 ExtensionElement 从此 ModelElement 可扩展的。如果此元素没有此类扩展则结果将为空。 (由 ModelElementExtensionMethods 定义。) |
页首
字段
名称 | 说明 | |
---|---|---|
CompartmentFillColorDomainPropertyId | 表示分配给隔离舱形状背景色的 ID。 | |
DomainClassId | 表示分配给形状隔离舱的 ID。 | |
NameDomainPropertyId | 表示分配给形状隔离舱名称的 ID。 | |
TitleDomainPropertyId | 表示分配给形状隔离舱的前缀的 ID。 | |
TitleFillColorDomainPropertyId | 表示分配给隔离舱形状标题的背景的 ID。 | |
TitleTextColorDomainPropertyId | TitleTextColor 字段属性 ID. | |
TitleVisibilityDomainPropertyId | 表示分配给隔离舱形状标题的可见性状态的 ID。 |
页首
显式接口实现
名称 | 说明 | |
---|---|---|
IMergeElements.CanMerge | ,如果此元素可与原型的内容,将返回 true。 (继承自 ModelElement。) | |
IMergeElements.ChooseMergeTarget(ElementGroup) | (继承自 ModelElement。) | |
IMergeElements.ChooseMergeTarget(ElementGroupPrototype) | (继承自 ModelElement。) | |
IMergeElements.MergeConfigure | (继承自 ModelElement。) | |
IMergeElements.MergeDisconnect | (继承自 ModelElement。) | |
IMergeElements.MergeRelate | (继承自 ModelElement。) |
页首
备注
每个隔离舱有一个标题,也可能不可见和该行的设置字段。
线程安全
此类型的任何公共 static(在 Visual Basic 中为 Shared) 成员都是线程安全的。但不保证所有实例成员都是线程安全的。