This topic has not yet been rated - Rate this topic

ElementLink Class

Base class for all domain relationships.

Object
  Microsoft.VisualStudio.Modeling.ModelElement
    Microsoft.VisualStudio.Modeling.ElementLink
      More...

Namespace:  Microsoft.VisualStudio.Modeling
Assembly:  Microsoft.VisualStudio.Modeling.Sdk.11.0 (in Microsoft.VisualStudio.Modeling.Sdk.11.0.dll)
[SerializableAttribute]
[DomainObjectIdAttribute("706debaa-dd2d-4293-99af-695aadd36c9a")]
[DomainRelationshipAttribute(AllowsDuplicates = true)]
public abstract class ElementLink : ModelElement

The ElementLink type exposes the following members.

  NameDescription
Protected methodElementLinkCreates a new instance of the ElementLink class.
Top
  NameDescription
Public propertyIdGets the ID of the element. (Inherited from ModelElement.)
Public propertyIsActiveGets the IsActive flag and verifies to see whether the element is active. (Inherited from ModelElement.)
Public propertyIsDeletedGets the IsDeleted flag and checks to see whether the element has been deleted from the model. (Inherited from ModelElement.)
Public propertyIsDeletingGets the IsDeleting flag and verifies whether the element is currently being deleted from the model. (Inherited from ModelElement.)
Public propertyLinkedElementsGets a read-only collection of elements connected by this element link.
Public propertyPartitionGets or sets the Partition that contains the element. (Inherited from ModelElement.)
Public propertyStoreGets the Store that contains the element. (Inherited from ModelElement.)
Top
  NameDescription
Protected methodCanMergeVerifies whether a source element can be added to this element. (Inherited from ModelElement.)
Protected methodChooseMergeTarget(ElementGroup)Selects a target element to accept as its child an element that the user wants to copy, drag, or create. (Inherited from ModelElement.)
Protected methodChooseMergeTarget(ElementGroupPrototype)Selects a target element to accept as its child an element that the user wants to copy, drag, or create. (Inherited from ModelElement.)
Public methodCopy()Creates a copy of the element in the model. (Inherited from ModelElement.)
Public methodCopy(IEnumerable<Guid>)Creates a copy of the element and its child links and elements. (Inherited from ModelElement.)
Public methodDelete()Deletes an element from the model. (Inherited from ModelElement.)
Public methodDelete(Guid[])Deletes an element from the model. (Inherited from ModelElement.)
Public methodEqualsDetermines whether the specified object is equal to the current object. (Inherited from Object.)
Protected methodFinalizeAllows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public methodGetDomainClassGets the most-derived domain class for this element. (Inherited from ModelElement.)
Public methodGetDomainRelationshipGets the domain relationship that this link instantiates.
Public methodGetHashCodeServes as a hash function for a particular type. (Inherited from Object.)
Protected methodGetRoleCollection<TCollection, TElement>(Guid)Gets or creates the linked element collection (Inherited from ModelElement.)
Public methodGetTypeGets the Type of the current instance. (Inherited from Object.)
Protected methodMemberwiseCloneCreates a shallow copy of the current Object. (Inherited from Object.)
Protected methodMergeConfigureAllows the model element to configure itself immediately after the Merge process has related it to the target element. (Inherited from ModelElement.)
Protected methodMergeDisconnectDisconnects a source element from a target element. (Inherited from ModelElement.)
Protected methodMergeRelateCreates a relationship between this target element and the specified source element. (Inherited from ModelElement.)
Public methodMoveBeforeChange the order of links connected to an element, moving this link before another.
Public methodMoveToIndexMove this link to a specified index position in the list.
Protected methodOnCopyCalled when this element has been created as a copy of another element. (Inherited from ModelElement.)
Protected methodOnDeletedCalled when this element has been deleted from the model. (Inherited from ModelElement.)
Protected methodOnDeletingCalled when this element is about to be deleted. (Inherited from ModelElement.)
Protected methodOnResurrectedCalled when this element has been added back to a model. (Inherited from ModelElement.)
Protected methodOnRolePlayerChangedCalled when the role player has been changed.
Protected methodOnRolePlayerChangingCalled when the role player will be changed.
Protected methodOnRolePlayerPositionChangedCalled when the position of a role has changed. (Inherited from ModelElement.)
Protected methodOnRolePlayerPositionChangingCalled when a role player position is about to change. (Inherited from ModelElement.)
Public methodToStringReturns a string that represents the current object. (Inherited from Object.)
Top
  NameDescription
Public Extension MethodAddExtension(Guid)Overloaded. Extend this ModelElement with newly instantiated extension of the identified domain type. An InvalidOperationException will be thrown if the element already has an extension of that type. (Defined by ModelElementExtensionMethods.)
Public Extension MethodAddExtension(Type)Overloaded. Extend this ModelElement with a newly instantiated extension of the specified type. An InvalidOperationException will be thrown if the element already has an extension of that type. (Defined by ModelElementExtensionMethods.)
Public Extension MethodAddExtension(DomainClassInfo)Overloaded. Extend this ModelElement with a newly instantiated extension of the specified domain type. An InvalidOperationException will be thrown if the element already has an extension of that type. (Defined by ModelElementExtensionMethods.)
Public Extension MethodAddExtension(ExtensionElement)Overloaded. Extend this ModelElement with a specific extension. An InvalidOperationException will be thrown if the element already has an extension of the same type. (Defined by ModelElementExtensionMethods.)
Public Extension MethodAddExtension<T>()Overloaded. Extend this ModelElement with a newly instantiated extension of a particular type. An InvalidOperationException will be thrown if the element already has an extension of the same type. (Defined by ModelElementExtensionMethods.)
Public Extension MethodCanDeleteDeletes the element from the model. (Defined by ImmutabilityExtensionMethods.)
Public Extension MethodGetAllExtensionsReturn an enumerable that performs a breadth first traversal across the tree of extension elements embedded in this ModelElement. (Defined by ModelElementExtensionMethods.)
Public Extension MethodGetBaseElementReturns the root of the virtual MEL in which the specified ModelElement is participating. (Defined by ModelElementExtensionMethods.)
Public Extension MethodGetExtension(Guid)Overloaded. (Defined by ModelElementExtensionMethods.)
Public Extension MethodGetExtension(Type)Overloaded. Get the ExtensionElement of the specified type from the available extensions of this ModelElement. If the element has no such extension then an InvalidOperationException will be raised. (Defined by ModelElementExtensionMethods.)
Public Extension MethodGetExtension(DomainClassInfo)Overloaded. (Defined by ModelElementExtensionMethods.)
Public Extension MethodGetExtension<T>()Overloaded. Get the ExtensionElement of the specified type from the available extensions of this ModelElement. If the element has no such extension then an InvalidOperationException will be raised. (Defined by ModelElementExtensionMethods.)
Public Extension MethodGetLocksGet the lock flags for this element. This will include any locks enabled on the Partition containing the element. (Defined by ImmutabilityExtensionMethods.)
Public Extension MethodIsExtendedBy(Guid)Overloaded. Query whether this ModelElement is currently extended by an ExtensionElement of a particular type. (Defined by ModelElementExtensionMethods.)
Public Extension MethodIsExtendedBy(Type)Overloaded. Query whether this ModelElement is currently extended by an ExtensionElement of a particular type. (Defined by ModelElementExtensionMethods.)
Public Extension MethodIsExtendedBy(DomainClassInfo)Overloaded. Query whether this ModelElement is currently extended by an ExtensionElement of a particular type. (Defined by ModelElementExtensionMethods.)
Public Extension MethodIsLockedTest whether this element has any of a specified set of locks (Defined by ImmutabilityExtensionMethods.)
Public Extension MethodRemoveExtension(Type)Overloaded. Remove any extension of this ModelElement that is of a particular type. (Defined by ModelElementExtensionMethods.)
Public Extension MethodRemoveExtension(Guid)Overloaded. Remove any extension of the specified ModelElement that is of a particular type. (Defined by ModelElementExtensionMethods.)
Public Extension MethodRemoveExtension(DomainClassInfo)Overloaded. Remove any extension of the specified ModelElement that is of a particular type. (Defined by ModelElementExtensionMethods.)
Public Extension MethodRemoveExtension(ExtensionElement)Overloaded. Remove a specified ExtensionElement from the extensions of this ModelElement. (Defined by ModelElementExtensionMethods.)
Public Extension MethodSetLocksSet the lock flags of this element (Defined by ImmutabilityExtensionMethods.)
Public Extension MethodTryGetExtension(Guid)Overloaded. (Defined by ModelElementExtensionMethods.)
Public Extension MethodTryGetExtension(Type)Overloaded. (Defined by ModelElementExtensionMethods.)
Public Extension MethodTryGetExtension(DomainClassInfo)Overloaded. (Defined by ModelElementExtensionMethods.)
Public Extension MethodTryGetExtension<T>()Overloaded. Get the ExtensionElement of the specified type from the available extensions of this ModelElement. If this element has no such extension then the result will be null. (Defined by ModelElementExtensionMethods.)
Top
  NameDescription
Public fieldStatic memberDomainClassIdID of the domain class for the ElementLink.
Top

When you define a domain relationship between two ModelElements in your DSL Definition, the generated class is derived from ElementLink. Many relationships in the DSL runtime and designer are also ElementLinks.

ElementLinks are also ModelElements, and can therefore have properties and be connected by links.

For more information, see Navigating and Updating a Model in Program Code.

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Object
  Microsoft.VisualStudio.Modeling.ModelElement
    Microsoft.VisualStudio.Modeling.ElementLink
      Microsoft.VisualStudio.Modeling.Diagrams.LinkConnectsToNode
      Microsoft.VisualStudio.Modeling.Diagrams.ParentShapeContainsNestedChildShapes
      Microsoft.VisualStudio.Modeling.Diagrams.ParentShapeHasRelativeChildShapes
      Microsoft.VisualStudio.Modeling.Diagrams.PresentationViewsSubject
      Microsoft.VisualStudio.Modeling.DslDefinition.AttributedDomainElementHasAttributes
      Microsoft.VisualStudio.Modeling.DslDefinition.AttributeHasParameters
      Microsoft.VisualStudio.Modeling.DslDefinition.BaseShapeMapReferencesBaseShape
      Microsoft.VisualStudio.Modeling.DslDefinition.ClassHasBaseClass
      Microsoft.VisualStudio.Modeling.DslDefinition.ClassHasElementMergeDirectives
      Microsoft.VisualStudio.Modeling.DslDefinition.ClassHasProperties
      Microsoft.VisualStudio.Modeling.DslDefinition.ClassIndexesElementMergeDirective
      Microsoft.VisualStudio.Modeling.DslDefinition.CompartmentMapHasElementsDisplayedPath
      Microsoft.VisualStudio.Modeling.DslDefinition.CompartmentMapHasPropertyDisplayedPath
      Microsoft.VisualStudio.Modeling.DslDefinition.CompartmentMapsReferToCompartment
      Microsoft.VisualStudio.Modeling.DslDefinition.CompartmentShapeMapHasCompartmentMaps
      Microsoft.VisualStudio.Modeling.DslDefinition.ConnectionBuilderHasLinkConnectDirectives
      Microsoft.VisualStudio.Modeling.DslDefinition.ConnectorMapReferencesConnector
      Microsoft.VisualStudio.Modeling.DslDefinition.ConnectorMapReferencesRelationship
      Microsoft.VisualStudio.Modeling.DslDefinition.ConnectorToolReferencesConnectionBuilder
      Microsoft.VisualStudio.Modeling.DslDefinition.CustomPropertyDescriptor
      Microsoft.VisualStudio.Modeling.DslDefinition.DecoratorMapHasPropertyDisplayedPath
      Microsoft.VisualStudio.Modeling.DslDefinition.DecoratorMapHasVisibilityPropertyPath
      Microsoft.VisualStudio.Modeling.DslDefinition.DecoratorMapReferencesDecorator
      Microsoft.VisualStudio.Modeling.DslDefinition.DesignerHasDiagram
      Microsoft.VisualStudio.Modeling.DslDefinition.DiagramElementHasDecorators
      Microsoft.VisualStudio.Modeling.DslDefinition.DiagramElementMapHasDecoratorMaps
      Microsoft.VisualStudio.Modeling.DslDefinition.DiagramHasConnectorMaps
      Microsoft.VisualStudio.Modeling.DslDefinition.DiagramHasShapeMaps
      Microsoft.VisualStudio.Modeling.DslDefinition.DiagramRepresentsClass
      Microsoft.VisualStudio.Modeling.DslDefinition.DomainClassHasCustomTypeDescriptor
      Microsoft.VisualStudio.Modeling.DslDefinition.DomainPropertyHasElementNameProvider
      Microsoft.VisualStudio.Modeling.DslDefinition.DomainRoleHasPropertyAttributes
      Microsoft.VisualStudio.Modeling.DslDefinition.DomainRoleImplementedByCollectionType
      Microsoft.VisualStudio.Modeling.DslDefinition.DslDefinesEditor
      Microsoft.VisualStudio.Modeling.DslDefinition.DslDefinesExplorer
      Microsoft.VisualStudio.Modeling.DslDefinition.DslDefinesExplorerBehavior
      Microsoft.VisualStudio.Modeling.DslDefinition.DslEditorIdentifiesRootClass
      Microsoft.VisualStudio.Modeling.DslDefinition.DslLibraryHasConnectionBuilders
      Microsoft.VisualStudio.Modeling.DslDefinition.DslLibraryHasDslLibraryImports
      Microsoft.VisualStudio.Modeling.DslDefinition.DslLibraryHasReferenceTypes
      Microsoft.VisualStudio.Modeling.DslDefinition.DslLibraryHasTypes
      Microsoft.VisualStudio.Modeling.DslDefinition.DslLibraryHasXmlSerializationBehavior
      Microsoft.VisualStudio.Modeling.DslDefinition.EditorHasToolboxTabs
      Microsoft.VisualStudio.Modeling.DslDefinition.EditorHasValidation
      Microsoft.VisualStudio.Modeling.DslDefinition.EditorHasXmlSerializationDefinition
      Microsoft.VisualStudio.Modeling.DslDefinition.ElementMergeDirectiveHasForwardingPath
      Microsoft.VisualStudio.Modeling.DslDefinition.ElementMergeDirectiveHasLinkCreationPaths
      Microsoft.VisualStudio.Modeling.DslDefinition.EnumerationHasAttributes
      Microsoft.VisualStudio.Modeling.DslDefinition.EnumerationHasLiterals
      Microsoft.VisualStudio.Modeling.DslDefinition.ExplorerBehaviorHasNodeSettings
      Microsoft.VisualStudio.Modeling.DslDefinition.ExplorerHidesNodes
      Microsoft.VisualStudio.Modeling.DslDefinition.ExplorerNodeSettingsHasPropertyDisplayedPath
      Microsoft.VisualStudio.Modeling.DslDefinition.ExplorerNodeSettingsReferencesClass
      Microsoft.VisualStudio.Modeling.DslDefinition.ExplorerReferencesBehavior
      Microsoft.VisualStudio.Modeling.DslDefinition.LinkConnectDirectiveHasSourceDirectives
      Microsoft.VisualStudio.Modeling.DslDefinition.LinkConnectDirectiveHasTargetDirectives
      Microsoft.VisualStudio.Modeling.DslDefinition.LinkConnectDirectiveReferencesDomainRelationship
      Microsoft.VisualStudio.Modeling.DslDefinition.ObjectToolReferencesClass
      Microsoft.VisualStudio.Modeling.DslDefinition.PathHasSegments
      Microsoft.VisualStudio.Modeling.DslDefinition.PathSegmentReferencesRole
      Microsoft.VisualStudio.Modeling.DslDefinition.PropertyHasType
      Microsoft.VisualStudio.Modeling.DslDefinition.PropertyPathHasPath
      Microsoft.VisualStudio.Modeling.DslDefinition.PropertyPathReferencesProperty
      Microsoft.VisualStudio.Modeling.DslDefinition.RelationshipHasRoles
      Microsoft.VisualStudio.Modeling.DslDefinition.RoleHasRolePlayer
      Microsoft.VisualStudio.Modeling.DslDefinition.RolePlayerConnectDirectiveAcceptsClass
      Microsoft.VisualStudio.Modeling.DslDefinition.RolePlayerConnectDirectiveHasPathToRolePlayer
      Microsoft.VisualStudio.Modeling.DslDefinition.ShapeHasCompartments
      Microsoft.VisualStudio.Modeling.DslDefinition.ShapeMapHasParentElementPath
      Microsoft.VisualStudio.Modeling.DslDefinition.ShapeMapReferencesClass
      Microsoft.VisualStudio.Modeling.DslDefinition.ToolboxTabHasTools
      Microsoft.VisualStudio.Modeling.DslDefinition.VisibilityPropertyPathHasPropertyFilters
      Microsoft.VisualStudio.Modeling.DslDefinition.XmlClassDataAppliesToDomainClass
      Microsoft.VisualStudio.Modeling.DslDefinition.XmlClassDataHasXmlElementData
      Microsoft.VisualStudio.Modeling.DslDefinition.XmlElementAppliesToDomainProperty
      Microsoft.VisualStudio.Modeling.DslDefinition.XmlRelationshipDataAppliesToDomainRelationship
      Microsoft.VisualStudio.Modeling.DslDefinition.XmlSerializationBehaviorHasXmlClassData
      Microsoft.VisualStudio.Modeling.DslDefinition.XmlSerializationDefinitionReferencesBehavior
      Microsoft.VisualStudio.Modeling.ExtensionExtendsElement
Did you find this helpful?
(1500 characters remaining)
© 2013 Microsoft. All rights reserved.