TrackingPropertyDescriptor Class
Provides additional run-time type information for a tracking property of a model element.
Assembly: Microsoft.VisualStudio.Modeling.Sdk.12.0 (in Microsoft.VisualStudio.Modeling.Sdk.12.0.dll)
System.ComponentModel::MemberDescriptor
System.ComponentModel::PropertyDescriptor
Microsoft.VisualStudio.Modeling.Design::ElementPropertyDescriptor
Microsoft.VisualStudio.Modeling.Design::TrackingPropertyDescriptor
Microsoft.VisualStudio.Modeling.DslDefinition.Design::DslDefinitionModelElementTrackingPropertyDescriptor
| Name | Description | |
|---|---|---|
![]() | TrackingPropertyDescriptor(ElementTypeDescriptor^, ModelElement^, DomainPropertyInfo^, DomainPropertyInfo^, array<Attribute^>^) | Initializes a new instance of the TrackingPropertyDescriptor class and specifies a default value provider. |
![]() | TrackingPropertyDescriptor(ModelElement^, DomainPropertyInfo^, DomainPropertyInfo^, array<Attribute^>^) | Initializes a new instance of the TrackingPropertyDescriptor class. |
| Name | Description | |
|---|---|---|
![]() | AttributeArray | (Inherited from MemberDescriptor.) |
![]() | Attributes | (Inherited from MemberDescriptor.) |
![]() | Category | Gets the category in which to group the domain property when the property is displayed in a PropertyGrid control that is set to Categorized mode.(Inherited from ElementPropertyDescriptor.) |
![]() | ComponentType | Gets the type of the model element to which this property is bound.(Inherited from ElementPropertyDescriptor.) |
![]() | Converter | Gets the converter for the described property.(Inherited from ElementPropertyDescriptor.) |
![]() | Description | Gets the description of the described property, as specified in the DescriptionResourceAttribute.(Inherited from ElementPropertyDescriptor.) |
![]() | DesignTimeOnly | (Inherited from MemberDescriptor.) |
![]() | DisplayName | Gets the display name of the described property, as specified in the DisplayNameResourceAttribute.(Inherited from ElementPropertyDescriptor.) |
![]() | DomainPropertyInfo | Gets the property information object that was used to create this property descriptor.(Inherited from ElementPropertyDescriptor.) |
![]() | IsBrowsable | (Inherited from MemberDescriptor.) |
![]() | IsInstanceBased | Test if this PropertyDescriptor is based on an instance or a static type.(Inherited from ElementPropertyDescriptor.) |
![]() | IsLocalizable | (Inherited from PropertyDescriptor.) |
![]() | IsReadOnly | Gets a value that indicates whether the described property is read-only.(Inherited from ElementPropertyDescriptor.) |
![]() | ModelElement | Gets the model element that was used to create this property descriptor.(Inherited from ElementPropertyDescriptor.) |
![]() | Name | (Inherited from MemberDescriptor.) |
![]() | NameHashCode | (Inherited from MemberDescriptor.) |
![]() | PropertyType | Gets the property type of the described property.(Inherited from ElementPropertyDescriptor.) |
![]() | SerializationVisibility | (Inherited from PropertyDescriptor.) |
![]() | SupportsChangeEvents | (Inherited from PropertyDescriptor.) |
This class provides dynamic custom property information for a tracking property.
The Domain-Specific Language Tools (DSL Tools) use this type to represent a domain class property that, until it is updated by the user, is calculated based on the value of another domain property. This type controls how a tracking property is handled by the property grid in the domain model and provides transactions for modifying the described property.
A tracking property has two states: tracking and updated by the user. This state is represented by a second, Boolean property, which is specified when the tracking property descriptor is created. By default, the value of the Boolean property should be true, which corresponds to the tracking state.
This descriptor controls whether the Reset command is enabled on the shortcut menu in the property grid for the property, and updates the value of the associated Boolean property when the tracking property is reset.
Notes to Callers:
To add a tracking property to a DSL definition, implement the following features:
A custom property-value-changed handler for each tracked property.
A custom type descriptor that returns a tracking property descriptor for each tracking property.
Every tracking property in such a way that its value is calculated when the associated Boolean property is true.
You also have to ensure that the value of every tracking property is set correctly whenever the store is constructed, such as during creation and loading of the DSL model.
Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.



