GraphObject Class
This class makes an object extensible by adding a strongly typed property bag of name/value pairs.
Inheritance Hierarchy
Object
Microsoft.VisualStudio.GraphModel.GraphObject
Microsoft.VisualStudio.GraphModel.Graph
Microsoft.VisualStudio.GraphModel.GraphGroup
Microsoft.VisualStudio.GraphModel.GraphLink
Microsoft.VisualStudio.GraphModel.GraphMetadata
Microsoft.VisualStudio.GraphModel.GraphNode
Microsoft.VisualStudio.GraphModel.Styles.GraphCondition
Microsoft.VisualStudio.GraphModel.Styles.GraphConditionalStyle
Microsoft.VisualStudio.GraphModel.Styles.GraphSetter
Namespace: Microsoft.VisualStudio.GraphModel
Assembly: Microsoft.VisualStudio.GraphModel (in Microsoft.VisualStudio.GraphModel.dll)
Syntax
'Declaration
Public MustInherit Class GraphObject _
Implements IDynamicMetaObjectProvider, INotifyPropertyChanged, IHasGraphOwner
public abstract class GraphObject : IDynamicMetaObjectProvider,
INotifyPropertyChanged, IHasGraphOwner
public ref class GraphObject abstract : IDynamicMetaObjectProvider,
INotifyPropertyChanged, IHasGraphOwner
[<AbstractClass>]
type GraphObject =
class
interface IDynamicMetaObjectProvider
interface INotifyPropertyChanged
interface IHasGraphOwner
end
public abstract class GraphObject implements IDynamicMetaObjectProvider, INotifyPropertyChanged, IHasGraphOwner
The GraphObject type exposes the following members.
Constructors
Name | Description | |
---|---|---|
GraphObject() | Protected constructor for Annotatable. | |
GraphObject(Graph) | Protected constructor for Annotatable. |
Top
Properties
Name | Description | |
---|---|---|
Categories | Returns all categories. Never returns null. | |
CategoryCount | Returns the number of categories in the object. | |
DescriptiveCategoryLabel | Creates a delimited list of all category labels for this graph object. | |
DocumentSchema | Gets the document-local schema from the owner of this graph. | |
IsGroup | Gets whether this object is IsGroup. It looks for the GraphProperties.StyleForGroup. | |
IsPseudo | Gets whether this object is Pseudo. It looks for the GraphProperties.IsPseudo. | |
Item | Property that gets or sets a property value. | |
Owner | Gets the Graph object that this object belongs to. | |
Properties | Property that returns an enumeration of all annotations. The order of the enumeration is random. | |
PropertyCount | Property that returns a number of all annotations. | |
PropertyKeys | Property that returns an enumeration of all annotation keys. The order of the enumeration is random. | |
PropertyValues | Property that returns an enumeration of all annotation values. The order of the enumeration is random. | |
Visibility | Helper property to get/set visibility property of a GraphObject. |
Top
Methods
Name | Description | |
---|---|---|
AddCategory | Adds a category to the object. | |
AsNode | Converts the GraphObject to a GraphNode. If this is a GraphGroup, the inner node is returned. For types other than GraphNode/Group, null is returned. | |
ClearCategories | Remove all categories from this object. | |
ClearValue(GraphProperty) | Removes the value of the specified property. | |
ClearValue<T>(GraphProperty) | Clears the value of the specified property. | |
CopyCategories | Copies any new categories from the given object, keeping existing categories. | |
CopyProperties | Copies any new properties from the given object, keeping existing property values unchanged. | |
Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.) | |
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 | Serves as a hash function for a particular type. (Inherited from Object.) | |
GetMetaObject | ||
GetSchemaValue | Gets the schema-specific value of the property, if one exists. | |
GetType | Gets the Type of the current instance. (Inherited from Object.) | |
GetValue(String) | Gets the value of the specified property. | |
GetValue(GraphProperty) | Gets the value of the specified annotation. | |
GetValue<T>(String) | Gets the value of the specified property. | |
GetValue<T>(GraphProperty) | Gets the value of the specified property. | |
GetValue<T>(GraphProperty, Graph) | Gets the value of the specified property. | |
GetValue<T>(GraphProperty, T) | Gets the value of the specified annotation. If property is not set, we return the default value that the caller passed to this method. | |
GetValue<T>(GraphProperty, Graph, GraphCategory%) | Gets the value of the specified property, and also returns the category that this property value was inherited from, if any. | |
GetValueAsString | Returns the given property as a string that uses the given culture. | |
HasCategory(String) | Returns true if the object has the given category. | |
HasCategory(GraphCategory) | Returns true if the object has the given category. | |
HasCategory(IEnumerable<GraphCategory>) | Returns true if the object has any of the given categories. | |
HasCategoryInSet | Determines whether the given set of categories applies to this object. | |
HasLocalValue | Returns true if the specified property exists on this object with no category inheritance check. | |
HasValue(String) | Find out whether the object has a value for the specified property. | |
HasValue(GraphProperty) | Returns true if the specified annotation exists. | |
MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) | |
OnCategoryChanged | ||
OnPropertyChanged(String) | Raises a PropertyChangd event for the named property. | |
OnPropertyChanged(GraphProperty) | Raises a PropertyChangd event for the given GraphProperty. | |
RemoveCategory | Removes the category of this object. | |
SetValue(String, Object) | Adds an annotation, using the given key, type, and value. | |
SetValue<T>(GraphProperty, T) | Sets the value of the given property. If the property already exists, its value is overwritten unless the annotation flags prevent otherwise. | |
ToString | Returns a string that represents the current object. (Inherited from Object.) | |
WrapGraphObject | Modifies the current graph object to share the same property and categories as the given graph object. The wrapper and wrappee graph objects will always have identical sets of properties and categories. |
Top
Events
Name | Description | |
---|---|---|
CategoryChanged | ||
PropertyChanged |
Top
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.