Search
General Information

The WpfDiagram Component

  • Redistribution is royalty free
  • Assembly is strong-named
  • Can be purchased with source code
  • Is written in C#
  • Implements the Document/View architecture

User Interaction

  • Several user interaction modes
  • Free-form drawing
  • Free-form selection mode
  • Scrolling and zooming
  • Copy and paste to/from Windows clipboard
  • Panning
  • Automatic scrolling while dragging items with the mouse
  • Magnification
  • Alignment to grid
  • Node alignment guides
  • Multiple selection
  • Tool-tips
  • Docking points can be defined for nodes
  • Undo / redo support
  • Resize multiple nodes simultaneously
  • Rotate and flip shapes
  • Multi-touch gestures

Programming

  • Programmatic access to the diagram elements
  • Extension methods for fluent API
  • Numerous properties for customizing appearance and behavior
  • Numerous utility methods
  • Path finding and cycle detection
  • Rich event set

Store and Retrieve Diagrams into/from

  • Files on disk
  • .NET streams
  • ASCII strings
  • XML documents
  • JSON strings

Output

  • To the screen by using Windows Presentation Foundation
  • Printing and print preview
  • To a browser using HTML image maps
  • Display graphs in 3D

Import and Export

  • Import Visio 2003 XML (VDX) Drawings
  • Import Visio 2013 XML (VSDX) Drawings
  • Import OpenOffice Draw (ODG) files
  • Import Scalable Vector Graphics (SVG) files
  • Export bitmap images
  • Export Portable Document Format (PDF) files
  • Export Scalable Vector Graphics (SVG) files
  • Export Visio 2003 XML (VDX) Drawings
  • Export Visio 2013 XML (VSDX) Drawings
  • Export Excel Open XML Format (XLSX) files
  • Export Windows MetaFile (WMF) images
  • Export Drawing Exchange Format (DXF) files

Diagram Elements

  • Use any WPF UIElement as a diagram node
  • More than 100 predefined node shapes
  • Display SVG drawings in nodes
  • Ability to define custom shapes and shape libraries
  • Templatable diagram nodes
  • Rotation of shapes at arbitrary angles
  • Container nodes
  • Tables with unlimited number of rows and columns
  • Table cells can span several columns and rows
  • Free-form outlines drawn by users
  • Display hierarchical data in TreeView nodes
  • Display shapes from Visio stencil files
  • Assign diagram items to layers
  • Sections of table rows can be expanded or collapsed
  • Links can comprise multiple segments
  • Link segments can be straight lines or curves
  • Display multiple labels per link
  • Support for custom node and link types

Automatic Layout

  • Non-blocking methods
  • Spring-Embedder graph layout
  • Directional tree layout
  • Horizontal/vertical binary tree layout
  • Radial tree layout
  • Fractal tree layout
  • Layered graph layout
  • Grid layout
  • Simulated Annealing graph layout
  • One-way graph layout
  • Orthogonal graph layout
  • Circular graph layout
  • Orthogonal link router
  • Source code flowchart layout
  • Decision flowchart layout
  • Process diagrams layout
  • Tree map layout
  • Swimlane diagrams layout
  • Topological graph layout
  • Cascading graph layout
  • Hierarchical graph layout
  • Triangular graph layout
  • Multi-level graph layout
  • Automatic link routing

Appearance

  • Nodes can display images and text
  • Multiple text labels per item
  • Various text alignment styles
  • Text can be laid out in polygonal areas
  • Glass visual effects
  • Styled HTML-like text formatting
  • Customizable fonts and colors
  • Custom painting of nodes
  • Shadows
  • User-assigned mouse cursors
  • Z-order
  • Rich choice of pen and brush styles
  • Transparent nodes
  • Invisible nodes
  • A background swimlane grid

Behavior

  • Lock diagram elements
  • Read-only mode supported
  • Tables can be scrolled
  • Collapse and expand hierarchy branches
  • In-place text editing
  • Dynamic positioning of links relative to connected nodes

Link Diagram Items

  • Nodes to nodes
  • Table rows to table rows
  • Nodes to table rows
  • Unconnected links

Hierarchical Grouping

  • Attaching nodes to other nodes
  • Attaching nodes to link control points
  • Attaching nodes to link segments

Auxiliary Controls

  • Overview control
  • Ruler control
  • VirtualizingDiagram control
  • NodeListView control
  • ShapeListBox control
  • LayerListView control
  • TabbedDiagramView control
  • Zoom control
  • Shape designer control