NetDiagram Programmer's Guide
MindFusion.Diagramming Namespace
Classes Interfaces Structures Delegates Enumerations
 

 Classes

  Class Description

AdjustmentHandle

Represents an adjustment handle used to move or modify diagram items.

AeroEffect

Represents an effect that adds semitransparency to the node and emphasizes its outline by adding a shade and an inner stroke.

AnchorPattern

Represents a set of anchor points, which specify the exact locations where links are allowed to connect to nodes.

AnchorPoint

Specify the locations in a node, to which the user is allowed to connect links.

AnchorPointCollection

Represents a strongly typed collection of anchor points.

AnchorPointEventArgs

Contains the arguments passed to the anchor point-related events, such as OriginAnchorChanged and DestinationAnchorChanged.

ArcTemplate

Represents an arc in a shape definition.

AreaEventArgs

Contains arguments passed to handlers of the CreatingArea event of the HtmlBuilder class.

ArrowHeads

Contains predefined arrowhead shapes.

AutoJson

Apply the AutoJson attribute to a property of a CompositeNode-derived class to indicate that it should be included in JSON serialization.

BarcodeNode

Represents nodes that can encode and render barcodes.

BarcodeNodeProperties

Stores the values of BarcodeNode properties during undo / redo operations. If you need to implement undo support for the additional properties defined by a class derived from BarcodeNode, do so by deriving from BarcodeNodeProperties and overriding the BarcodeNode.SaveProperties, BarcodeNode.RestoreProperties, and BarcodeNode.CreateProperties methods.

BarcodeNodeStyle

Represents a reusable set of properties that define the appearance of barcode nodes.

BezierTemplate

Represents a Bézier curve in a shape definition.

CellEventArgs

Contains the arguments passed to event handlers, such as CellClicked.

CellValidationEventArgs

Contains the arguments passed to event handlers, such as CellTextEditing.

ClipboardEventArgs

Contains the arguments passed to the RequestClipboard event handlers.

CollectionBase(T)

An implementation of the IList<T> interface.

CommandHistory

Maintains a queue of Command records used to undo or redo actions.

CompositeNode

CompositeNode implements nodes whose appearance can be defined via composition of components and layout containers.

CompositeNodeStyle

Represents a reusable set of properties that define the appearance of composite nodes.

ConnectionPoint

This class represents a connection between an edge and a node in a graph. It decouples the DiagramLink class from the DiagramNode class, allowing edges to connect different types of nodes without knowing anything of their implementation details. Each DiagramLink object contains two ConnectionPoint instances describing the connections at both ends of the link.

Constants

Contains various global constants, also provides measure unit independent constants.

ContainerChildEventArgs

Contains arguments passed to events related to container children.

ContainerNode

Represents a diagram node that can contain other nodes.

ContainerNodeProperties

Stores the values of ContainerNode properties during undo / redo operations.

ContainerNodeStyle

Represents a reusable set of properties that define the appearance of container nodes.

ControlPointEventArgs

Contains arguments passed to handlers of the ShapeModified event.

Converter

Provides capabilities to convert various types to and from strings in a culture-independent way.

Diagram

Represents a flow diagram.

DiagramBase

The base class of the Diagram and DiagramDocument classes.

DiagramDocument

Represents a collection of diagram pages.

DiagramEventArgs

Contains the arguments passed to event handlers, such as Clicked and DoubleClicked.

DiagramItem

Represents an item in the diagram document. All classes representing diagram elements derive from DiagramItem.

DiagramItemCollection

Represents a strongly typed collection of DiagramItem objects.

DiagramItemProperties

The base type for classes that store diagram item properties during undo / redo operations.

DiagramItemState

Contains a snapshot of the internal state of a diagram item. Instances of this class are used to store the state of items for later undo or redo operations.

DiagramItemStyle

Represents a reusable set of properties that define the appearance of diagram items.

DiagramLink

Represents a link between two diagram nodes.

DiagramLinkCollection

Represents a strongly typed collection of DiagramLink objects.

DiagramLinkProperties

Stores the values of DiagramLink properties during undo / redo operations.

DiagramLinkState

Contains a snapshot of the internal state of a DiagramLink.

DiagramLinkStyle

Represents a reusable set of properties that define the appearance of diagram links.

DiagramNode

Represents a diagram node.

DiagramNodeCollection

Represents a strongly typed collection of diagram nodes.

DiagramNodeEventArgs

Contains the arguments passed to the NodeSelected and NodeRemoved event handlers.

DiagramNodeProperties

The base class for classes that store the properties for a DiagramNode-derived items during undo / redo operations.

DiagramNodeState

Contains a snapshot of the internal state of a DiagramNode.

DiagramNodeStyle

Represents a reusable set of properties that define the appearance of diagram nodes.

DiagramPage

Represents a single page in a DiagramDocument object.

DiagramPageEventArgs

Contains the arguments passed to DiagramPage-related event handlers.

DiagramPageValidationEventArgs

Contains the arguments passed to handlers of DiagramPage validation events.

DiagramStyle

Represents a reusable set of properties that define the appearance of diagrams.

DraggedNode

Class used to hold the DiagramNode instance during drag and drop. It is used for easier detection of the dragged content as DragEventArgs.Data.GetData does not check super classes.

DraggedShape

Contains drag-and-drop information for a shape being dragged from ShapeToolBar and ShapeListBox.

DrawAnchorPointEventArgs

Contains the arguments passed to the DrawAnchorPoint event handlers.

DrawBranchIndicatorEventArgs

Contains the arguments passed to the DrawBranchIndicator event handlers.

DrawCellEventArgs

Contains the arguments passed to the DrawCell event handlers.

DrawItemEventArgs

Contains the arguments passed to the DrawAdjustmentHandles event handlers.

DrawLinkEventArgs

Contains the arguments passed to the DrawLink event handlers.

DrawNodeEventArgs

Contains the arguments passed to the DrawNode event handlers.

DummyNode

Represents virtual nodes used for disconnected links.

EditCellTextEventArgs

Contains the arguments passed to the CellTextEdited event handlers.

EditLinkTextEventArgs

Contains the arguments passed to the EditLinkTextEventHandler event handlers.

EditNodeTextEventArgs

Contains the arguments passed to the NodeTextEdited event handlers.

EffectsProvider

Provides smooth shadow and emboss effects for NetDiagram nodes.

ElementTemplate

Represents an element of a shape definition. This is the parent class of specific element types, such as ArcTemplate, LineTemplate and BezierTemplate.

EmbossEffect

Represents an emboss effect.

Factory

Provides shortcut methods for creating and adding instances of the standard NetDiagram item types. Call the class methods through the Factory property of the Diagram class.

FreeFormHandle

Represents an adjustment handle used to modify the outline of a FreeFormNode.

FreeFormNode

A FreeFormNode collects all points from users' mouse or touch input and displays them as node's outline.

FreeFormNodeStyle

Represents a reusable set of properties that define the appearance of free-form nodes.

GlassEffect

Represents a glass-like visual effect.

GridRouter

Implements a link routing algorithm that uses a grid to represent the free and occupied regions in the diagram.

Group

Represents a group of items in the diagram document.

Group.Attachment

Encapsulates attachment information.

GroupCollection

Represents a strongly typed collection of Group objects.

GroupEventArgs

Contains the arguments passed to handlers of group-related events, such as GroupDestroyed.

HandlesVisualStyle

Defines the Pen and Brush objects used to draw items' adjustment handles.

HitTestEventArgs

Contains the arguments passed to the HitTestAdjustmentHandles event handlers.

HtmlBuilder

Provides methods to create and use HTML client side image maps.

InstantiateItemEventArgs

Contains the arguments passed to the InstantiateItem event handlers.

InteractionState

Encapsulates the current state of user interaction with the control.

InternalUtils

Contains common helper methods, specific to NetDiagram.

ItemCollectionBase(T)

A base collection class for the diagram item collections.

ItemEventArgs

Contains the arguments passed to item instantiation event handlers.

JsonPersistContext

Contains methods that can help you serialize and deserialize MindFusion.Diagramming items to and from JSON.

JsonSerializeTagEventArgs

Contains the arguments passed to the JsonSerializeTag and JsonDeserializeTag event handlers.

Layer

Represents a layer in a Diagram object.

LayerEventArgs

Contains the arguments passed to the LayerVisibilityChanged event handler.

LineTemplate

Represents a line segment in a shape definition.

LinkAdjustmentHandle

Represents an adjustment handle used to modify the position of a link's control point.

LinkEventArgs

Contains the arguments passed to handlers of link related events, such as LinkCreated and LinkDeleted.

LinkLabel

Represents a label displayed by a DiagramLink. New labels can be added to a link by calling the DiagramLink.AddLabel method.

LinkShapeEventArgs

Contains the arguments passed to the SetSelfLoopShape event handler.

LinkValidationEventArgs

Contains the arguments passed to handlers of link validation events.

MapContent

Represents the content of a map file.

MapNode

Represents nodes that can render geographical maps.

MapNodeProperties

Stores the values of MapNode properties during undo / redo operations. If you need to implement undo support for the additional properties defined by a class derived from MapNode, do so by deriving from MapNodeProperties and overriding the MapNode.SaveProperties, MapNode.RestoreProperties, and MapNode.CreateProperties methods.

MeasureUnit

Represents a unit of measure.

NodeAdjustmentHandle

Represents an adjustment handle used to move, resize or rotate a node.

NodeConstraints

Defines specific constraints that can be applied to the size and location of nodes.

NodeEffect

Represents the base class of all visual effects that can be applied to the nodes in a Diagram.

NodeEventArgs

Contains the arguments passed to handlers of node-related events, such as TreeCollapsed and TreeExpanded.

NodeValidationEventArgs

Contains the arguments passed to handlers of node validation events.

NotATreeException

An exception raised by the TreeEnumerator class if the specified node does not represent a root of a tree.

NotifyCollectionChangedEventArgs(T)

Provides data for the ObservableCollection<T>.CollectionChanged event.

ObservableCollection(T)

Represents a dynamic data collection that provides notifications when items get added, removed, or when the whole list is refreshed.

Path

Represents a sequence of connected DiagramNode and DiagramLink elements.

PathCollection

Represents a strongly typed collection of Path objects.

PathFinder

Provides methods that help you find paths and cycles in a graph.

PersistableCollection(T)

A base collection class for persistable collections.

PersistContext

Contains methods that help serializing and deserializing complex NetDiagram object to and from binary streams.

PointCollection

Represents a strongly typed collection of points.

QuickRouter

Implements a very fast link routing algorithm that uses a tree to represent the free and occupied regions in the diagram.

ReadOnlyCollection(T)

Represents a read-only wrapper of a collection.

ReadOnlyDiagramItemCollection

Represents a read-only collection of items.

ReadOnlyDiagramLinkCollection

Represents a read-only collection of links.

ReadOnlyDiagramNodeCollection

Represents a read-only collection of nodes.

RectangleFConverter

Converts from RectangleF to other data types.

RenderOptions

Provides properties that allow customization of various aspects of printing and print-preview.

RepaintEventArgs

Specifies the coordinates of the area that should be repainted by views when the Repaint event is raised.

RoundRectangleTemplate

Represents an ElementTemplate that draws round rectangle. This class ensures that the round corners do not change during resizing which is visually better. The drawback is that the radius appears to be specified in DiagramView Measure units and therefore a given shape instance will look bad when the measure unit is not the one for which the shape was designed.

RoutingOptions

Allows customization of various aspects of the link routing algorithm.

RowEventArgs

Contains the arguments passed to handlers of table row-related events, such as TableSectionCollapsed and TableSectionExpanded.

ScriptHelper

Allows calling some static NetDiagram methods from JavaScript and VBScript. It seems the script languages do not allow calling class static methods, so a ScriptHelper instance property is provided by the Diagram class.

Selection

Represents a set of items selected in the diagram document.

SelectionCopy

Used internally in the implementation of copy/paste functions.

SelectionEventArgs

Contains the arguments passed to the SelectionModified event handler.

SelectionValidationEventArgs

Contains the arguments passed to the SelectionModifying event handler.

SerializeTagEventArgs

Contains the arguments passed to the SerializeTag and DeserializeTag event handlers.

Shape

An instance of this class represents a shape defined through a series of arc, line and Bézier segments. The segments can be a part of the shape outline, in which case they define the part of the shape is filled, used for hit-testing and for aligning links to the node edges. Segments can also be added as decoration elements, in which case they only affect the appearance of a ShapeNode.

ShapeAdjustmentHandle

Represents an adjustment handle used to modify the Shape of a ShapeNode.

ShapeCollection

Represents a read-only collection of shapes.

ShapeControlPoint

Represents a control point that can be used to adjust the shape of a ShapeNode. Control point positions are passed as parameters to shape formulas, whose code can alter the coordinates of the shape's graphic primitives based on the parameter values.

ShapeConverter

Converts from Shape to other data types.

ShapeData

Contains the cached coordinates of the key points of a shape when the shape is applied to a specific ShapeNode. This class also stores additional data passed to custom shape-generation callbacks and to shape formula scripts.

ShapeDecoration

Defines decoration elements that are displayed as filled shapes.

ShapeEventArgs

Contains the arguments passed to the ShapeSelected and ShapeRenamed event handlers.

ShapeFormulaParam

Represents the position of a ShapeControlPoint, passed as parameter to shape formulas.

ShapeLibrary

The ShapeLibrary class represents a collection of shape definitions stored together.

ShapeNode

ShapeNode instances are diagram nodes that represent geometric shapes.

ShapeNodeProperties

Stores the values of ShapeNode properties during undo / redo operations.

ShapeNodeState

Contains a snapshot of the internal state of a ShapeNode. Instances of this class are used to store the state of nodes for later undo or redo operations. If you derive from ShapeNode and need to implement undo support for the additional internal state defined by your class, do so by deriving from ShapeNodeState and overriding the ShapeNode.CreateState, ShapeNode.SaveState and ShapeNode.RestoreState methods.

ShapeNodeStyle

Represents a reusable set of properties that define the appearance of shape nodes.

Shapes

Provides alternative method of access to the NetDiagram predefined shapes, that allows code completion and IntelliSense support, which is not available when using Shape.FromId.

SizeFConverter

Converts from SizeF to other data types.

SmoothShadowEffect

Represents an effect that smooths the shadow of nodes. This effect does nothing if shadows are not visible.

Style

Represents an unordered dynamic collection of properties that can be identified by name.

StylePropertyChangedEventArgs

Contains the arguments passed to handlers of the PropertyChanged event.

SvgNode

Represents nodes that can render SVG drawings.

SvgNodeProperties

Stores the values of SvgNode properties during undo / redo operations. If you need to implement undo support for the additional properties defined by a class derived from SvgNode, do so by deriving from SvgNodeProperties and overriding the SvgNode.SaveProperties, SvgNode.RestoreProperties, and SvgNode.CreateProperties methods.

SvgNodeStyle

Represents a reusable set of properties that define the appearance of SVG nodes.

TableNode

Tables are diagram nodes that can contain multiple cells and can be related to other nodes through their rows.

TableNode.Cell

Represents a cell in a TableNode instance.

TableNode.CellCollection

Represents a strongly-typed collection of TableNode.Cell objects.

TableNode.Column

Represents a column of a TableNode.

TableNode.ColumnCollection

Represents a strongly-typed collection of TableNode.Column objects.

TableNode.Row

Represents a row in TableNode node.

TableNode.RowCollection

Represents a strongly-typed collection of TableNode.Row objects.

TableNodeProperties

Stores the values of TableNode properties during undo / redo operations.

TableNodeStyle

Represents a reusable set of properties that define the appearance of table nodes.

Theme

Represents a set of Style objects for different diagram item types.

ThicknessConverter

The TypeConverter of the Thickness structure.

TimerEventArgs

Contains the arguments passed to timer-related event handlers.

TreeEnumerator

Enables an easy standard method to iterate over the elements of a tree-like structure of objects.

TreeItemEventArgs

Contains the arguments passed to handlers of TreeViewItem-related events.

TreeItemValidationEventArgs

Contains the arguments passed to event handlers, such as TreeItemTextEditing.

TreeViewConnectionPoint

Represents a connection between a link and a TreeViewNode.

TreeViewItem

Represents a constituent item of the hierarchy displayed inside a TreeViewNode.

TreeViewNode

Represents nodes that can draw hierarchical data.

TreeViewNodeStyle

Represents a reusable set of properties that define the appearance of tree view nodes.

UndoEventArgs

Contains the arguments passed to the ActionRecorded, ActionUndone and ActionRedone event handlers.

UndoManager

Implements undo/redo functionality in NetDiagram.

UndoValidationEventArgs

Contains the arguments passed to the ActionRecording event handlers.

VideoNode

Represents nodes that render video stream assigned to the VideoLocation property.

VisioContent

Represents the content of a VisioNode.

VisioNode

Represents a node that can display shapes from Visio stencils.

VisioNodeProperties

Stores the values of VisioNode properties during undo / redo operations. If you need to implement undo support for the additional properties defined by a class derived from VisioNode, do so by deriving from VisioNodeProperties and overriding the VisioNode.SaveProperties, VisioNode.RestoreProperties, and VisioNode.CreateProperties methods.

VisioNodeStyle

Represents a reusable set of properties that define the appearance of Visio nodes.

VisioStencil

Represents a Visio stencil.

XmlPersistContext

Contains methods that can help you serialize and deserialize NetDiagram items to end from XML documents.

 Interfaces

  Interface Description

IDiagramView

Controls that display Diagram objects must implement this interface to provide screen resolution information to drawing methods.

IEffectsProvider

Visual effects provider.

IItemFactory

Defines an interface for constructing IPersists objects.

ILinkRouter

Defines methods that should be implemented by a link-router component. The control calls them when a new link path should be set in response to changes in the diagram, such as adding or modifying nodes.

IMeasureUnitConverter

Provides means to convert between cross-type measure units.

InplaceEditable

Represents an in-place editable object.

IPersists

Base interface for serializable NetDiagram objects.

IProperty

Represents a property that can have an undefined value.

IResolution

Provides information about device resolution.

Scrollable

Interface used by scrollbars to interact with their containing nodes.

 Structures

  Structure Description

Thickness

Describes the thickness of a rectangular frame.

Vector

Represents a two-dimensional vector.

 Delegates

  Delegate Description

CreatePathDelegate

Specifies the signature of callback functions used to generate dynamic node shapes.

VisitNode

Defines the prototype for methods called by VisitNodes.

 Enumerations

  Enumeration Description

Action

Defines values that identify the possible actions a user can carry out on diagram items.

AdjustmentHandles

Identifies the distinct selection handles of a node.

Anchoring

Defines values that specify how automatic layout algorithms align links to anchor points.

AttachTo

Specifies the type of attachment in a group.

AttachToLink

Defines values specifying the possible ways to attach a node to a link.

AttachToNode

Defines values specifying the possible ways to attach a node to another node.

AutoResize

Defines in which directions automatic resizing can enlarge the diagram scrollable area.

Axis

Specifies a coordinate axis.

Behavior

Defines values that specify how the component responds to actions performed by the user.

BranchIndicator

Defines values that indicate how to mark link branching points.

CellFrameStyle

Specifies the style of the cells' frame lines.

ColumnStyle

Specifies how table columns' width is set.

ContainmentKeys

For internal use.

ControlMouseAction

Specifies available ways to handle mouse clicks on .NET controls hosted in a ControlNode.

CursorHint

Specifies what mouse cursor to display while a user interacts with the diagram.

CustomDraw

Specifies what kind of custom painting to perform on diagram elements.

DelKeyAction

Specifies the type of action performed when the user presses the DEL key.

DirectionConstraint

Defines values that specify in what direction to constrain node movement.

ExpandButtonAction

Specifies what action is triggered by the [±] buttons that are displayed near expandable nodes.

ExpandButtonPosition

Defines values that specify possible locations for expand/collapse buttons.

FitSize

Specifies how the ResizeToFitText method should resize a node.

GlassEffectType

Specifies the type of a GlassEffect node effect.

Granularity

Specifies the granularity of the obstacles map generated by QuickRouter.

GridStyle

Defines values that specify the visual style of the alignment grid.

GroupAnchorStyles

Specifies the master node edges to which a subordinate node can be anchored.

GroupRotation

Defines values that indicate how rotation of a group's master node affects the nodes attached to that group.

HandlesStyle

Enumerates possible visual styles for frames that are drawn around selected nodes.

HitTestPriority

Defines values that specify the order of item hit-testing.

HitTestResult

Represents the return value from a hit test.

HyperLinkStyle

Specifies how various export components should treat the HyperLink property of items.

Key

A copy of the System.Windows.Forms.Key enumeration used to propagate input information to manipulators and components.

LinkCrossings

Defines values that indicate how to render link intersection points.

LinkShape

Specifies available styles for the segments of links.

LinkTextStyle

Specifies the position and alignment of links' labels.

MarkStyle

Specifies the visual style of anchor point marks.

MeasureUnitType

Specifies the type of a unit of measure.

ModificationStart

Specifies how the user can start modifying an item.

ModifierKeyAction

Defines the actions that can be assigned to a modifier key such as CTRL or ALT.

MouseButton

Specifies constants that define which mouse button was pressed.

MouseButtonActions

Specifies what actions can be associated with the middle and right mouse buttons.

NodeHandleType

Identifies the types of selection handles of a node.

NotifyCollectionChangedAction

Describes the action that caused a CollectionChanged event.

Orientation

Defines values that specify the orientation of the first segment of cascading links.

Relationship

Specifies the type of relationship between two tables.

RelativeToLink

Specifies how the link labels are positioned.

RenderTarget

Specifies where the diagram is being rendered.

RerouteLinks

Provides values indicating in what circumstances links must be rerouted automatically.

RestrictToBounds

Specifies a restriction of the position of items relatively to the diagram bounds.

SaveToStringFormat

Specifies in what format to save the diagram when generating a string using the SaveToString method.

SelectionStyle

Defines values that specify how multiple selected items are indicated visually.

ShadowsStyle

Enumerates possible shadows-drawing styles.

ShowAnchors

Specifies when anchors points should be displayed.

SimpleShape

Defines the possible values for Shape property of tables.

SnapToAnchor

Specifies when link ends are snapped to nearest anchor points.

TableConnectionStyle

Specifies the possible values for the ConnectionStyle property of tables.

TableScrollUI

Identifies types of scroll UI supported by TableNode.

TreeViewConnectionStyle

Specifies the possible values for the ConnectionStyle property of TreeViewNode objects.

UnitType

Defines values that indicate whether point positions are specified in percentage, or in absolute units relative to the node's top-left corner.

View3D

Defines keys used to associate 3D position data with a node through the LayoutTraits property.