yFiles WPF Release Notes

yFiles WPF is the newest bugfix and maintenance release available.

Technical Requirements

  • Visual Studio 2010 or higher for software development with yFiles WPF.
  • Applications based on yFiles WPF require the Microsoft .NET Framework 4.0 runtime (or higher).
  • A browser to view the HTML documentation.
  • A Microsoft Windows operating system that supports the Windows Presentation Foundation.

yFiles WPF - Changes Since 3.1


  • PortRelocationHandle.GhostVisualizationPenKey now is excluded from obfuscation.
  • Fixed the Save command always opening a file dialog even if a file has been specified in a previous file operation.
  • Mouse wheel scrolling and scroll commands no longer move the view to the top left corner if the viewport is limited by a ViewportLimiter.
  • The cursor is now correctly reset after editing an orthogonal edge.
  • The CreateEdgeInputMode class doesn't show port candidates anymore if bend creation is enforced (by pressing CTRL key during edge creation).
  • Bridges sometimes didn't appear on edges when they were scrolled into the viewport.
  • The visualizations for port candidates do not prevent context menus from being opened anymore.
  • Fixed a possible infinite loop in the OrthogonalEdgeHelper class.
  • The bounds and the visibility state of the ICanvasObject installed by the RectangleIndicatorInstaller class were wrong. This impacted the performance as e.g. some node selection highlights were updated although they were not in the viewport and resulted in unnecessary large content rectangles.
  • Removed false messages about binding errors which might occur in rare cases when using GraphSource.
  • Fixed a possible NullReferenceError which could occur in customized LabelDropInputMode and PortDropInputMode classes.
  • Fixed rendering which was incomplete in rare cases (redraw due to binding changes on a considerable number of elements while new visuals have been added in the same drawing cycle).
  • The Clone method now is overridable in all style implementations.
  • Enabling the LabelDropInputMode.AutoEditLabel property had no effect.
  • The graph parameter of the constructor of the PortRelocationHandleProvider class can now be null. This was already the documented behavior.
  • Fixed method Append(PathGeometry, Matrix2D, bool) of GeneralPath which did not apply the matrix if the current path was not empty.
  • The INodeInsetsProvider implementations which can be retrieved from InteriorLabelModel and InteriorStretchLabelModel now correctly sum up the space required by overlapping labels.
  • The scrollbars now respect viewport limits set by a ViewportLimiter even if the limited bounds are smaller than the GraphControl's ContentRect.
  • Fixed a possible NullReferenceException in TableNodeStyleRenderer when a TableNodeStyle is rendered with Table set to null.
  • SizeD.ToSize now returns Size.Empty for SizeD.Empty instead of throwing an exception.
  • The indicators for bend grid snapping were not always drawn at the correct position for bends which were implicitly moved with a selected edge.

Demo Improvements

  • The RenderPolicies demo has been updated with a better design and description.
  • InteractiveNodesGraphSource demo: Fixed exception when dragging nodes from GraphControl to the trash can.
  • Fixed some issues in BPMN demo which occured when the style of an edge was changed.