IShape Interface

A shape on a diagram that shows a view of an element in a model. Some types of model element can have more than one shape. Some shapes are composed of other shapes. For example, a class shape contains shapes for each attribute and operation. Shapes have graphical properties such as color and position.

Namespace:  Microsoft.VisualStudio.ArchitectureTools.Extensibility.Presentation
Assembly:  Microsoft.VisualStudio.ArchitectureTools.Extensibility (in Microsoft.VisualStudio.ArchitectureTools.Extensibility.dll)


Public Interface IShape
public interface IShape
public interface class IShape
type IShape =  interface end
public interface IShape

The IShape type exposes the following members.


  Name Description
Public property ChildShapes Shapes that are contained within this shape. For example, the attribute and operation rows of a class shape; class shapes contained inside a package shape; ports and parts inside a component. For each ChildShape, ParentShape == this.
Public property Color Gets or sets the color of the shape.
Public property Diagram The diagram that contains this shape.
Public property Height
Public property ParentShape The shape that contains this shape, or null. If ParentShape is not null, this shape is a member of ParentShape.ChildShapes.
Public property Width
Public property XPosition
Public property YPosition



  Name Description
Public method Delete Removes the shape from the diagram. This might or might not remove from the model the element that the shape displays. For example, removing a class shape from a class diagram does not remove the UML class from the model.
Public method GetObject<T> Gets the model element represented by this shape. Supply the type of the result that you want.
Public method Move Changes the position and size of the shape.
Public method ToIShape<T> Cast to a type that specifies the type of the element that the shape represents.


Extension Methods

  Name Description
Public Extension Method GetChildShapes<T> Get child shapes that display the specified type of model element. (Defined by PresentationHelpers.)
Public Extension Method GetElement The model element that this shape represents. (Defined by IShapeExtensions.)



For more information and samples, see the following topics:

See Also


Microsoft.VisualStudio.ArchitectureTools.Extensibility.Presentation Namespace