IClass Interface

A description or partial description of objects that can respond to messages and events, hold values, and change state.

Namespace:  Microsoft.VisualStudio.Uml.Classes
Assembly:  Microsoft.VisualStudio.Uml.Interfaces (in Microsoft.VisualStudio.Uml.Interfaces.dll)

public interface IClass : IBehavioredClassifier, IEncapsulatedClassifier, 
	IStructuredClassifier, IClassifier, IType, IPackageableElement, IParameterableElement, 
	INamespace, IRedefinableElement, INamedElement, ITemplateableElement, IElement

The IClass type exposes the following members.

Public propertyApplicableStereotypesThe set of stereotypes that could be applied to this element. (Inherited from IElement.)
Public propertyAppliedStereotypesEach IStereotypeInstance denotes that a stereotype has been applied to this element. (Inherited from IElement.)
Public propertyClientDependenciesGets the Dependency relationships for which this element is the Client. (Inherited from INamedElement.)
Public propertyDescriptionThe description of this element. (Inherited from IElement.)
Public propertyFeaturesGets the Attributes, Operations and Receptions that are associated with every member of this class. A subset of Namespace::Member. (Inherited from IClassifier.)
Public propertyGeneralizationsGets the Generalization relationships through which this Classifier inherits Features. (Inherited from IClassifier.)
Public propertyGeneralsGets the Classifiers from which this Classifier inherits Members. (Inherited from IClassifier.)
Public propertyInheritedMembersGets the subset of Members that are inherited. (Inherited from IClassifier.)
Public propertyInterfaceRealizationsGets the Interfaces realized by this behavior. (Inherited from IBehavioredClassifier.)
Public propertyIsAbstractTrue if this is a partial description intended to be extended or overridden in specializing classes. (Inherited from IClassifier.)
Public propertyIsActiveClassTrue if each instance of this class is associated with a thread of control.
Public propertyIsLeafTrue if this element should not be specialized. That is, it should not be the target of a Generalization relationship. (Inherited from IRedefinableElement.)
Public propertyIsTemplateTrue if this class is a template that can be bound to parameters. (Inherited from IClassifier.)
Public propertyMembersGets the elements that are part of this Namespace. (Inherited from INamespace.)
Public propertyNameThe name of this element within the Namespace that contains it. In this Namespace, there should be no other element that has this Name. (Inherited from INamedElement.)
Public propertyNamespaceGets the Namespace in which this element is defined. May be null. (Inherited from INamedElement.)
Public propertyNestedClassifiersGets the list of classes that are defined inside this class.
Public propertyOwnedAttributes Gets the list of attributes (properties) that are defined in this class.
Public propertyOwnedBehaviorsGets the Behaviors defined within the scope of this classifier. (Inherited from IBehavioredClassifier.)
Public propertyOwnedCommentsGets Comments contained in this element (not comments linked to it). (Inherited from IElement.)
Public propertyOwnedConnectorsGets the connectors owned by the classifier, for example the Assembly and Delegate connectors in a Component. (Inherited from IStructuredClassifier.)
Public propertyOwnedElementsGets Elements owned by this element. Every element has one owner, except the root IModel. (Inherited from IElement.)
Public propertyOwnedMembersGets the elements that are defined within this Namespace. (Inherited from INamespace.)
Public propertyOwnedOperationsGets the list of operations that are defined in this class.
Public propertyOwnedPortsGets the Ports through which instances of this type interact with other instances. (Inherited from IEncapsulatedClassifier.)
Public propertyOwnedRedefinableTemplateSignature (Inherited from IClassifier.)
Public propertyOwnerGets the Element that owns this element. Every element except the root IModel has one owner. (Inherited from IElement.)
Public propertyOwningPackageGets the package that contains this element. (Inherited from IPackageableElement.)
Public propertyOwningTemplateParameterIf not null, this element is defined as a parameter in a template. (Inherited from IParameterableElement.)
Public propertyPackageGets the package to which the type belongs. (Inherited from IType.)
Public propertyPackageImportsGets the packages that are imported by this namespace. (Inherited from INamespace.)
Public propertyPartsGets the Properties of which this classifier is composed. (Inherited from IStructuredClassifier.)
Public propertyQualifiedNameGets the name of this element, prefixed with the Qualified Name of the Namespace that contains it. Empty if the Name is empty or if the Qualified Name of the Namespace is empty. (Inherited from INamedElement.)
Public propertySuperClassesGets the Classes from which this class inherits features.
Public propertyTemplateBindingsGets the Bindings in which this element is used. (Inherited from ITemplateableElement.)
Public propertyTemplateParameterIf not null, this element is defined as a parameter in a template. (Inherited from IParameterableElement.)
Public propertyTypedElementsGets the Typed elements that are constrained to contain values of this type. (Inherited from IType.)
Public propertyUseCasesGets the Use Cases for which this Classifier is the Subject. (Inherited from IClassifier.)
Public propertyVisibilityDefines where the element can be referenced. Public = visible anywhere; private = visible only in the owning Namespace; protected = visible to elements that have a generalization relationship to the owning Namespace; package = visible only in the Package owning the Namespace, if there is one. Default = public. (Inherited from INamedElement.)
Public propertyVisibleAppliedStereotypes (Inherited from IElement.)

Public Extension MethodAddReferenceLinks a string to an element, usually where the string is a reference such as a URI, modelbus reference, or work item ID. Use the name to indicate the type of reference. Returns an IReference object that represents the link. (Defined by UmlExtensions.)
Public Extension MethodApplyStereotypeApplies the stereotype to element. Creates an IStereotypeInstance that represents the extension of the model element by the stereotype. (Defined by ProfileStereotypeExtensions.)
Public Extension MethodCreateAttributeCreate a new IProperty object in the Class (Defined by ClassExtensions.)
Public Extension MethodCreateConnectorConnect the source element to a target element, such as a Part or Port. If the source or target is a Port located on a Part, specify both. (Defined by ConnectableElementExtensions.)
Public Extension MethodCreateGeneralizationCreate a new generalization of this classifier. An IGeneralization relationship is created between this and another given classifier. (Defined by ClassifierExtensions.)
Public Extension MethodCreateInteractionCreate a new IInteraction object in the BehavioredClassifier (Defined by BehavioredClassifierExtensions.)
Public Extension MethodCreateNestedActivityCreate an activity that describes the behavior of this element. (Defined by BehavioredClassifierExtensions.)
Public Extension MethodCreateOperationCreate a new IOperation object in the Class (Defined by ClassExtensions.)
Public Extension MethodCreatePackageImportImport a package into a namespace. Creates an IPackageImport link to the package. (Defined by NamespaceExtensions.)
Public Extension MethodCreatePart()Overloaded. Create a new Part, with an unspecified type. (Defined by StructuredClassifierExtensions.)
Public Extension MethodCreatePart(IComponent)Overloaded. Create a new Part, with a given type, or with a new type. Specify a null type to create a new Component as the type of the Part. (Defined by StructuredClassifierExtensions.)
Public Extension MethodCreateTemplateBindingBind the given classifier to given template classifier. If required, add parameter substitutions using CreateSubstitution. (Defined by TemplateBindingExtensions.)
Public Extension MethodCreateTemplateParameter(IParameterableElement)Overloaded. Creates a template parameter that references given parameteredElement. (Defined by TemplateBindingExtensions.)
Public Extension MethodCreateTemplateParameter(TemplateParameterKind, String)Overloaded. Creates a template parameter with the given name. (Defined by TemplateBindingExtensions.)
Public Extension MethodCreateTemplateSignatureCreates a template signature on the given classifier. (Defined by TemplateBindingExtensions.)
Public Extension MethodDeleteDeletes this element and any relationships, owned elements, and shapes. (Defined by UmlExtensions.)
Public Extension MethodDeleteAllReferenceRemove all the references of a given tag. (Defined by UmlExtensions.)
Public Extension MethodFindTemplateParameterFind a template parameter by name. (Defined by TemplateBindingExtensions.)
Public Extension MethodGetDependencyClientsReturn a collection of elements that are dependent on this. (Defined by NamedElementExtensions.)
Public Extension MethodGetDependencySuppliersReturn a collection of elements on which this is dependent. (Defined by NamedElementExtensions.)
Public Extension MethodGetIdGets a GUID that identifies this element. (Defined by UmlExtensions.)
Public Extension MethodGetImportedPackagesThe imported packages of the namespace (Defined by PackageExtensions.)
Public Extension MethodGetModelStoreGets the IModelStore that contains this element. (Defined by UmlExtensions.)
Public Extension MethodGetOutgoingAssociationEndsThe opposite ends of the associations that are linked to this classifier. From the association ends, you can get the linked classifier and its type. (Defined by ClassifierExtensions.)
Public Extension MethodGetRealizedInterfacesReturns a collection of the IInterfaces implemented by the given classifier. (Defined by BehavioredClassifierExtensions.)
Public Extension MethodGetReferencesGet the IReferences of a given tag that are associated with this element. (Defined by UmlExtensions.)
Public Extension MethodGetRelatedElements<T>Gets elements related to this element by relationships of the specified type. (Defined by UmlExtensions.)
Public Extension MethodGetRelatedLinks<T>Gets relationships of a specified type from or to this element. (Defined by UmlExtensions.)
Public Extension MethodGetSpecificsReturns all the classifiers that specialize this classifier. (Defined by ClassifierExtensions.)
Public Extension MethodSetOwnerChange the owner. (Defined by SetOwnerExtensions.)
Public Extension MethodShapesAll the shapes that display the model element on any open diagram, or on a specified open diagram. (Defined by PresentationHelpers.)


The methods defined on this type are extension methods. To use the methods, you must add a project reference to the .NET assembly Microsoft.VisualStudio.ArchitectureTools.Extensibility.dll, and you must include the directive using Microsoft.VisualStudio.ArchitectureTools.Extensibility.Uml; in your code.

Was this page helpful?
(1500 characters remaining)
Thank you for your feedback
© 2014 Microsoft