ChangeRule Class
Represents a rule that is called when the value of a property of an element is changed.
Inheritance Hierarchy
System.Object
Microsoft.VisualStudio.Modeling.Rule
Microsoft.VisualStudio.Modeling.ChangeRule
Microsoft.VisualStudio.Modeling.Diagrams.LineLabelAutoPlacementChangeRule
Microsoft.VisualStudio.Modeling.Diagrams.LineRoutingRule
Microsoft.VisualStudio.Modeling.Diagrams.LinkShapeChangedRule
Namespace: Microsoft.VisualStudio.Modeling
Assembly: Microsoft.VisualStudio.Modeling.Sdk.12.0 (in Microsoft.VisualStudio.Modeling.Sdk.12.0.dll)
Syntax
'Declaration
Public MustInherit Class ChangeRule _
Inherits Rule
public abstract class ChangeRule : Rule
public ref class ChangeRule abstract : public Rule
[<AbstractClass>]
type ChangeRule =
class
inherit Rule
end
public abstract class ChangeRule extends Rule
The ChangeRule type exposes the following members.
Constructors
Name | Description | |
---|---|---|
ChangeRule | Initializes a new instance of the ChangeRule class. |
Top
Properties
Name | Description | |
---|---|---|
FireBefore | true if this rule will be executed before the change occurs. (Inherited from Rule.) | |
FireImmediately | true if this rule will execute immediately the change occurs. (Inherited from Rule.) | |
FireOnLocalCommit | true if this rule will execute when the current transaction commits. (Inherited from Rule.) | |
FireOnTopLevelCommit | true if this rule will execute when the top level transaction commits. (Inherited from Rule.) | |
FireTime | Gets or sets when the rule should execute. Normally set by the RuleOn attribute. (Inherited from Rule.) | |
IsEnabled | Gets or sets whether the rule is enabled. Normally true by default, but you can initialize it to false in the RuleOn attribute. (Inherited from Rule.) | |
Priority | Gets the priority that is assigned to the rule. Helps to determine the order in which rules are executed at the end of a transaction. (Inherited from Rule.) |
Top
Methods
Name | Description | |
---|---|---|
CompareTo(Object) | Compares the rule to another object. (Inherited from Rule.) | |
CompareTo(Rule) | Compares the rule to another rule by their IDs. (Inherited from Rule.) | |
ElementPropertyChanged | Alerts listeners that a property for an element has changed. | |
Equals(Object) | Verifies whether the rule is equal to another object. (Inherited from Rule.) | |
Equals(Rule) | Verifies whether a rule is equal to another rule. (Inherited from Rule.) | |
Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.) | |
GetHashCode | Gets the hash code for the rule. (Inherited from Rule.) | |
GetType | Gets the Type of the current instance. (Inherited from Object.) | |
MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) | |
ToString | Returns a string that represents the current object. (Inherited from Object.) |
Top
Remarks
A RuleOnAttribute attribute placed on the class indicates what type of object the rule works on and when the rule should fire, either inline, local transaction commit, or top level transaction commit.
The rule is triggered when the value is actually different from the previous value. It is not triggered if the property is set to its current value.
This type of rule does not apply to the properties that are generated from relationships. To respond to a change in a relationship, define Add and Delete rules on the domain relationship.
For more information and examples, see Rules Propagate Changes Within the Model.
Thread Safety
Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
See Also
Reference
Microsoft.VisualStudio.Modeling Namespace