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

 Classes

  Class Description

AddItemCommand

Implements creation of new diagram items.

AdjustmentHandle

The members of this class specify which selection handles of an item should be enabled or disabled.

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

Represents a location in a node to which links are allowed to connect.

AnchorPointCollection

Represents a strongly-typed collection of anchor points.

AnchorPointDetails

Contains information about the location where links connects to a node.

ArcTemplate

Represents an arc segment in a Shape definition.

AreaEventArgs

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

ArrowHeads

Contains predefined arrowhead shapes.

BehaviorBase

An abstract base class for types that define how the control reacts to users' actions with a mouse or other pointing devices.

BezierTemplate

Represents a Bezier curve in a Shape definition.

BoolValueConverter

Converts boolean to Visibility.

Brushes

Brushes contains some predefined Brush objects used by the control.

Cell

Represents a cell in a TableNode instance.

CellEventArgs

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

ChangeItemCommand

Handles undo / redo of property changes.

Clip

A helper class which can provide ClipToBounds functionality in Silverlight.

CollectionBase(T, E)

Defines a collection that raises events to notify when elements are added to or removed from it.

Column

Represents a column of a TableNode.

Command

Represents an action that changes the diagram and whose effects can be undone.

CompositeCommand

Represents a set of Command instances as a single operation. Undoing or redoing the composite action, respectively undoes or redoes all its constituent subactions at the same time.

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 ContainerChildEventHandler,

ContainerNode

Represents a diagram node that can contain other nodes.

ContainerNodeState

Represents the state of a ContainerNode.

ControlNode

ControlNode instances represent diagram nodes which can host Silverlight controls.

ControlNodeEventArgs

Contains the arguments passes to handlers of the control host serialization events.

ControlNodeState

Represents the state of a ControlNode.

Converter

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

DashArrayConverter

Used to clone DoubleCollection instances when implementing StrokeDashArray in control templates, since DoubleCollections cannot be shared between controls.

DashStyle

Defines the dash style of a Pen.

DashStyles

Provides several stock pen dash styles.

Diagram

The Diagram class 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.

DiagramHost

A control that hosts DiagramView and handles Diagram interaction with the server side ASPX component NetDiagram.

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.

DiagramItemState

Saves the state of this diagram item.

DiagramLink

Represents a link between two diagram nodes.

DiagramLinkCollection

Represents a strongly typed collection of DiagramLink objects.

DiagramLinkState

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

DiagramNode

DiagramNode is an abstract base class from which the ShapeNode, TableNode and ControlNode classes derive. DiagramNode instances can represent graph vertices, nodes in organizational or flow diagrams, entities in ER diagrams, and so on.

DiagramNodeCollection

Represents a strongly typed collection of diagram nodes.

DiagramNodeState

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

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.

DiagramTabControl

Represents a TabControl that displays DiagramTabItem items.

DiagramTabItem

Represents a tab item in a DiagramTabControl.

DiagramTabItemButton

For internal use.

DockToVisibilityConverter

Converts Dock to Visibility.

DoNothingBehavior

Implements the DoNothing behavior.

DrawContainersBehavior

Implements the DrawContainers behavior.

DrawControlsBehavior

This class is used when the diagram behavior is set to BehaviorType.DrawControls.

DrawHandlesEventArgs

Contains the arguments passed to the HitTestAdjustmentHandles event handlers.

DrawLinksBehavior

This class is used when the diagram behavior is set to Behavior.DrawLinks.

DrawNodesBehavior

The base class for behavior types that allow drawing of nodes, but not links.

DrawShapesBehavior

Implements the DrawShapes behavior.

DrawTablesBehavior

Implements the DrawTables behavior.

DrawTreeViewsBehavior

This class is used when the diagram behavior is set to Behavior.DrawTreeViews.

DummyConnectionPoint

Represents connection points for unconnected links.

DummyNode

Represents virtual nodes used for disconnected links.

EditLinkTextEventArgs

Contains the arguments passed to the EditLinkTextEventArgs event handlers.

EditNodeTextEventArgs

Contains the arguments passed to the NodeTextEdited event handlers.

ElementTemplate

The base class for the elements that can be used in Shape definitions. This is the parent class of specific element types, such as ArcTemplate, LineTemplate, RoundRectangleTemplate and BezierTemplate.

ExpandButton

Represents the expand/collapse button displayed beside Expandable nodes.

Factory

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

FilledRectangle

Control that is displayed in ControlNodes by default to make them visible.

FoldButton

Represents the fold / unfold button of containers.

GeometryCloneConverter

Implements cloning of RectangleGeometry objects, required because geometries cannot be shared by multiple bindings.

GlassEffect

Represents a glass-like visual effect.

GraphicsUnit

Specifies units of measure for a given data.

GridRouter

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

HandlesVisualStyle

Defines stroke and brush attributes used to draw selection handles.

HatchBrush

Emulates GDI+ hatch brushes using the WPF ImageBrush class.

HitTestEventArgs

Contains the arguments passed to the HitTestAdjustmentHandles event handlers.

HtmlBuilder

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

InPlaceEditEventArgs

Contains the arguments passed to the EnterInplaceEditMode and LeaveInplaceEditMode event handlers.

Interaction

Encapsulates the current state of user interaction with the control.

InteractionState

Encapsulates the current state of user interaction with the control.

ItemCollectionBase(T)

A base collection class for the diagram item collections.

ItemEventArgs

Contains the arguments passed to item instantiation event handlers.

Layer

Represents a layer in a Diagram object.

LayerListBox

Represents the ListBox control inside a LayerListView.

LayerListBoxItem

Represents an item in a LayerListBox control.

LayerListView

Represents a list box with MindFusion.Diagramming.Layer objects.

LineTemplate

Represents a line segment in a shape definition.

LinkContainersBehavior

This class is used when the diagram behavior is set to Behavior.LinkContainers.

LinkControlsBehavior

This class is used when the diagram behavior is set to Behavior.LinkControls.

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.

LinkNodesBehavior

The base class for behavior types that allow drawing both nodes and links.

LinkShapeEventArgs

Contains the arguments passed to the SetSelfLoopShape event handler.

LinkShapesBehavior

This class is used when the diagram behavior is set to Behavior.LinkShapes.

LinkTablesBehavior

This class is used when the diagram behavior is set to Behavior.LinkTables.

LinkTreeViewsBehavior

This class is used when the diagram behavior is set to Behavior.LinkTreeViews.

LinkValidationEventArgs

Contains the arguments passed to handlers of link validation events.

Magnifier

Represents a magnifying tool.

MagnifyBehavior

This class is used when the diagram behavior is set to Behavior.Magnify.

MillimeterConverter

Returns millimeter size in current measure unit.

ModifyBehavior

This class is used when the diagram behavior is set to Behavior.Modify.

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.

NodeListView

A ListBox control with support for hosting DiagramNode -derived objects and dragging them to the Diagram control. Items' labels can be set by assigning them to the Tag property of nodes.

NodeListViewEventArgs

Contains data about the DragDropCompleted event.

NodeValidationEventArgs

Contains the arguments passed to handlers of node validation events.

OrientationVisibilityConverter

Converts Orientation to Visibility.

Overview

The Overview control provides a scaled-down view of a Diagram contents and allows scrolling and zooming the diagram with the mouse.

OverviewControl

Represents a layer overview in a LayerListView.

PageRenamedEventArgs

Contains arguments for the PageRenamed event.

PanBehavior

This class is used when the diagram behavior is set to Behavior.Pan.

Pen

Pen instances are used to draw the outline of geometric shapes.

PrintOptions

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

QuickRouter

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

RemoveItemCommand

Implements deletion of diagram items.

RenderOptions

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

RoundRectangleTemplate

Represents an ElementTemplate that draws round rectangle.

RoutingOptions

Allows customization of various aspects of the link routing algorithm.

Row

Represents a row in a TableNode object.

Ruler

The Ruler control provides horizontal and vertical scales that help users measure diagram items.

ScrollArrowEventArgs

Contains arguments for the ScrollArrowClicked event.

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.

SelectOnlyBehavior

This class is used when the diagram behavior is set to Behavior.SelectOnly.

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 Bezier 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.

ShapeConverter

Converts from Shape to other data types.

ShapeDecoration

That class contained an array of shape template elements that define shape decorations. Can contain lines, arcs and Bézier curves. The shape is closed and filled.

ShapeLibrary

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

ShapeNode

ShapeNode instances are diagram nodes that represent geometric shapes.

ShapeNodeState

Represents the state of a ShapeNode.

Shapes

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

StringFormat

Specifies the text alignment for labels displayed inside diagram items.

StrokeConverter

Scales stroke thickness values to reverse the effect of Viewbox scaling.

TabbedDiagramView

Represents a control that can display DiagramDocument objects. The individual diagram pages can be activated through the tabs in the tray located at one of the view sides.

TabHeaderPanel

This class is for internal use only.

TableNode

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

TableNodeState

Represents the state of a TableNode.

TabThicknessConverter

Converts Dock to Thickness.

TextWrappingConverter

Converts boolean values to TextWrapping values.

Theme

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

ThicknessConverter

Converts strings to Thickness values.

TranslateLayer

A UIElement that is child to Diagram and contains all its items. It allows to apply translation on all items without changing the diagram object. This is used for implemention Diagram.Bounds, e.g. when Bounds = (20,20,40,40) Item at coordinate 20,20 must be rendered at Diagram coordinate 0,0.

TreeItemCollection

Represents a strongly typed collection of TreeViewItem objects.

TreeView

A container for the child items of a TreeViewItem.

TreeViewConnectionPoint

Represents a connection between a link and a TreeViewNode.

TreeViewItem

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

TreeViewItemState

Represents the state of a TreeViewItem.

TreeViewNode

Represents nodes that can draw hierarchical data.

TreeViewNodeState

Represents the state of a TreeViewNode.

UndoEventArgs

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

Utilities

Contains common helper methods.

VirtualizingDiagram

Implements virtualization of diagram elements.

VirtualLinkEventArgs

Contains arguments passed to handlers of the LinkRealized event.

VirtualNodeEventArgs

Contains arguments passed to handlers of the NodeRealized event.

VisibilityConverter

Converts boolean property values to Visibility values.

VisualImage

Renders the contents of an arbitrary FrameworkElement as a Bitmap.

XmlPersistContext

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

ZoomButton

The button used in ZoomControl.

ZoomControl

ZoomControl lets users zoom and pan a target Diagram interactively.

 Interfaces

  Interface Description

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.

InplaceEditable

Represents an in-place editable object.

IZoomTarget

Specifies the capabilities required by ZoomControl from its target controls.

 Structures

  Structure Description

PointI

Point with integer coordinates.

 Delegates

  Delegate Description

AreaEventHandler

Represents methods that will handle the CreatingArea event of the HtmlBuilder class.

InstantiateLink

Represent a method that creates actual DiagramLink objects to represent data items on screen.

InstantiateLinkData

Represents a method that instantiates data items for links drawn by the user.

InstantiateNode

Represent a method that creates actual DiagramNode -derived objects to represent data items on screen.

InstantiateNodeData

Represents a method that instantiates data items for nodes drawn by the user.

ItemEventHandler(T)

Represents methods that will handle general item-related events.

ResolveNodePosition

Represents a method that determines the position of a data item within the diagram.

 Enumerations

  Enumeration Description

Action

Specifies the possible actions a user can carry out on diagram items.

AdjustmentHandles

Identifies the distinct selection handles of a node.

Alignment

Generalized alignment enum.

Anchoring

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

AutoResize

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

Behavior

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

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.

Dock

Specifies a dock destination.

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.

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.

HandlesStyle

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

HatchStyle

Represents hatch patterns corresponding to GDI+ HatchBrush objects.

HitTestPriority

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

ImageAlign

Specifies the position and alignment of a picture in a box or table, or that of the background image.

LinkCrossings

Defines values that indicate how to render link intersection points.

LinkShape

Specifies available link shapes.

MarkStyle

Specifies the visual style of anchor point marks.

ModificationStart

Specifies how the user can start modifying an item.

MouseButton

Specifies constants that define which mouse button was pressed.

Orientation

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

RelativeToLink

Specifies how the link labels are positioned.

RerouteLinks

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

RulerUnit

Specifies a measurement unit for the Ruler.

SaveToStringFormat

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

ScrollDirection

Identifies the direction of a scroll arrow.

ShowAnchors

Specifies when anchors points should be displayed.

SimpleShape

Defines the possible values for the Shape property of tables.

StringAlignment

Replaces System.Drawing.StringAlignment

TabAlignment

Specifies the alignment of the tab headers in a TabControl.

TabLayoutMode

Specifies how tab items are arranged in the header of a TabControl.

TableConnectionStyle

Specifies the possible values for the ConnectionStyle property of tables.

TabRotation

Specifies the rotation of the tab items in a DiagramTabControl.

TickPosition

Specifies the position of trackbar ticks.

TreeViewConnectionStyle

Specifies the possible values for the ConnectionStyle property of TreeViewNodes.