A collection of controls for node based editors designed for MVVM.
This project is a refactoring of Nodify on the Avalonia platform and is not a 1:1 replica of Nodify, but they have many similarities.

- Designed from the start to work with MVVM
- Built-in dark and light themes
- Selecting, zooming, panning
- Select, move, auto align, auto panning when close to edge and connect nodes
- Supports
- auto align Node
- display text on Connection
- Select multiple nodes
- Nonsupport
- Minimap
PressandHold-> Move the all show items- Mouse wheel -> Zoom all show items
- Hold
CtrlandPress Move-> Box select Nodes
Press MoveandHold-> Move the NodePress MoveandHold Shift-> Move the Node(without automatically align)Pressthe Node -> Select the Node- Hold
CtrlandClick-> Select or unselect Node - Hold
CtrlandPress Moveon the selected Node -> Move all selected Nodes
PressandHoldthe Connector and move to another Connector -> Create a new connection- Hold
AltandClickConnection -> Remove Connection DoubleClickConnection -> Split the connection in the double-click position
PressandHoldthe Connector -> Show connection preview
- Hold
AltandClickConnector -> Remove all the Connections on the Connector
- ViewModelBase is for reference only, you don't need to use it, there are binding methods in Example's AXAML code.
- Do not use
Mode=OneWayToSourcewhen you have multiple Nodify bound to the same ViewModel, this is a bug from Avalonia
please see the NodifyM.Avalonia.Example
- Prevent auto-panning when not dragging a node
- Implement dragging the corner of a single node to zoom
- Fixed an incorrect zoom center compensation calculation
- Add binding support for NodifyEditor.SelectedItems
- Change Property from DataTemplate to IDataTemplate interface.
- Fixed NuGet contains a reference to Avalonia.Diagnostics
- Refactor NodifyEditor to improve transform handling (#13)
- Fix Zoom property only binds one-way
- Add ZoomCenter property
- Support box selection and multiple selection
- Fixed memory leaks