NodifyM.Avalonia
1.0.16
.NET 5.0
This package targets .NET 5.0. The package is compatible with this framework or higher.
.NET Core 3.1
This package targets .NET Core 3.1. The package is compatible with this framework or higher.
.NET Framework 4.7.2
This package targets .NET Framework 4.7.2. The package is compatible with this framework or higher.
dotnet add package NodifyM.Avalonia --version 1.0.16
NuGet\Install-Package NodifyM.Avalonia -Version 1.0.16
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="NodifyM.Avalonia" Version="1.0.16" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add NodifyM.Avalonia --version 1.0.16
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: NodifyM.Avalonia, 1.0.16"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install NodifyM.Avalonia as a Cake Addin #addin nuget:?package=NodifyM.Avalonia&version=1.0.16 // Install NodifyM.Avalonia as a Cake Tool #tool nuget:?package=NodifyM.Avalonia&version=1.0.16
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
NodifyM.Avalonia
A collection of controls for node based editors designed for MVVM.
About
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.
Features
- 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
What are the differences compared to Nodify
- Supports
- auto align Node
- display text on Connection
- Nonsupport
- Select multiple nodes
- Will be supported in the future
- none
Usage
NodifyEditor
Press
andHold
→ Move the all show items- Mouse wheel → Zoom all show items
Node
Press
andHold
→ Move the NodePress Move
andHold Shift
→ Move the Node(without automatically align)Press
the Node → Select the Node
Connection
Press
andHold
the Connector and move to another Connector → Create a new connection- Hold
Alt
andClick
Connection → Remove Connection DoubleClick
Connection → Split the connection in the double-click position
PendingConnection
Press
andHold
the Connector → Show connection preview
Connector
- Hold
Alt
andClick
Connector → Remove all the Connections on the Connector
Notice
- ViewModelBase is for reference only, you don't need to use it, there are binding methods in Example's AXAML code.
Some known problems
- Do not use
Mode=OneWayToSource
when you have multiple Nodify bound to the same ViewModel, this is a bug from Avalonia
Example
please see the NodifyM.Avalonia.Example
You can git clone the project and run NodifyM.Avalonia.Example
Changelog
1.0.16
- Optimization No longer forces connector type
- Fix If the connector is a Combobox can't click to expand it
1.0.15
- Fix OnPointerPressed event handler
1.0.14
- Remove unnecessary packages
1.0.13
- Fixed SelectedNode Property
- Added the ability to select and drag the Node corresponding to the Connector
1.0.12
- Fixed the adaptive node layout calculation error
- Added node centerline alignment
1.0.11
- Added automatic adaptation to display all Nodes when NodifyEditor is initialized
- Optimize child node search
1.0.10
- Fixed Node Header/Input/OutputTemplate allow use IDataTemplate
- Added Avalonia.Diagnostics Condition
1.0.9
- Allows not to use the built-in ViewModelBase
- Fixed ViewTranslateTransform and AlignmentLine exceptions when multiple NodifyEditor
1.0.8
- Added Light and Dark themes follow the Avalonia toggle
- Fixed invalid Connection Text Brush modifications
- Optimize the Dark theme color
- Added GridLine color definition
1.0.7
- Added Node auto panning when close to edge
1.0.6
- Fixed Node IsSelected property
- Fixed Node BorderBrush Style
- Added Node Alignment hint
1.0.5
- Added the ability to temporarily without automatically align Node while holding Shift
- Added the ability to display text on Connection
1.0.4
- Add align Node configuration properties
- Add Node automatic alignment
1.0.3
- Added the connection SplitConnection and DisconnectConnection commands
- Add CircuitConnection
- Fixed default control color to dictionary color
- Support to override the Connect and Disconnect from NodifyEditorViewModelBase method
- Fix KnotNode Show
- Remove some useless attributes
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 is compatible. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp3.1 is compatible. |
.NET Framework | net472 is compatible. net48 was computed. net481 was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
.NETCoreApp 3.1
- Avalonia.Desktop (>= 11.0.10)
- Avalonia.Diagnostics (>= 11.0.10)
- CommunityToolkit.Mvvm (>= 8.2.2)
- System.Reactive (>= 6.0.1)
-
.NETFramework 4.7.2
- Avalonia.Desktop (>= 11.0.10)
- Avalonia.Diagnostics (>= 11.0.10)
- CommunityToolkit.Mvvm (>= 8.2.2)
- System.Reactive (>= 6.0.1)
-
net5.0
- Avalonia.Desktop (>= 11.0.10)
- Avalonia.Diagnostics (>= 11.0.10)
- CommunityToolkit.Mvvm (>= 8.2.2)
- System.Reactive (>= 6.0.1)
-
net8.0
- Avalonia.Desktop (>= 11.0.10)
- Avalonia.Diagnostics (>= 11.0.10)
- CommunityToolkit.Mvvm (>= 8.2.2)
- System.Reactive (>= 6.0.1)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
1.0.16 | 63 | 11/19/2024 |
1.0.15 | 162 | 5/6/2024 |
1.0.14 | 119 | 5/6/2024 |
1.0.13 | 393 | 4/3/2024 |
1.0.12 | 224 | 2/8/2024 |
1.0.11 | 104 | 2/6/2024 |
1.0.10 | 106 | 2/4/2024 |
1.0.9 | 104 | 2/3/2024 |
1.0.8 | 110 | 2/2/2024 |
1.0.7 | 105 | 2/1/2024 |
1.0.6 | 100 | 1/31/2024 |
1.0.5 | 102 | 1/30/2024 |
1.0.4 | 108 | 1/29/2024 |
1.0.3 | 100 | 1/29/2024 |
1.0.2 | 108 | 1/27/2024 |
1.0.1 | 94 | 1/27/2024 |
1.0.0 | 103 | 1/27/2024 |