Northwoods.GoWinForms
10.0.0-beta2
Please switch over to the Northwoods.GoDiagram.WinForms package, as that is where future updates will take place.
See the version list below for details.
dotnet add package Northwoods.GoWinForms --version 10.0.0-beta2
NuGet\Install-Package Northwoods.GoWinForms -Version 10.0.0-beta2
<PackageReference Include="Northwoods.GoWinForms" Version="10.0.0-beta2" />
paket add Northwoods.GoWinForms --version 10.0.0-beta2
#r "nuget: Northwoods.GoWinForms, 10.0.0-beta2"
// Install Northwoods.GoWinForms as a Cake Addin #addin nuget:?package=Northwoods.GoWinForms&version=10.0.0-beta2&prerelease // Install Northwoods.GoWinForms as a Cake Tool #tool nuget:?package=Northwoods.GoWinForms&version=10.0.0-beta2&prerelease
GoDiagram — .NET Library for Interactive Diagrams
GoDiagram is currently in beta
<img align="right" height="150" src="https://godiagram.com/assets/images/icon.png">
GoDiagram is a .NET library for creating interactive diagrams, charts, and graphs. It is based on the GoJS JavaScript diagramming library, also from Northwoods Software.
GoDiagram is a flexible library that can be used to create a number of different kinds of interactive diagrams, including data visualizations, drawing tools, and graph editors. GoDiagram includes a number of built in layouts including tree layout, force directed, radial, and layered digraph layout, and a number of custom layout examples.
Read more about GoDiagram at godiagram.com.
This repository contains the sources for all samples and extensions. You can use the GitHub repository to quickly search through the sample sources.
Minimal Sample
Graphs are constructed by creating one or more templates, with desired properties data-bound, and adding model data.
...
private void Setup() {
_Diagram = diagramControl1.Diagram;
// diagram properties
_Diagram.UndoManager.IsEnabled = true; // enable undo & redo
// define a simple Node template
_Diagram.NodeTemplate =
new Node("Auto") // the Shape will go around the TextBlock
.Add(
new Shape("RoundedRectangle") { StrokeWidth = 0 }
.Bind("Fill", "Color"),
new TextBlock {
Font = new Font("Segoe UI", 14, FontWeight.Bold), Stroke = "#333", Margin = 8, // Specify a margin to add some room around the text
Editable = true
}
.Bind("Text")
);
// but use the default Link template, by not setting Diagram.LinkTemplate
// create the model data that will be represented by Nodes and Links
_Diagram.Model = new Model {
NodeDataSource = new List<NodeData> {
new NodeData { Key = "n0", Text = "Alpha", Color = "lightblue" },
new NodeData { Key = "n1", Text = "Beta", Color = "orange" },
new NodeData { Key = "n2", Text = "Gamma", Color = "lightgreen" },
new NodeData { Key = "n3", Text = "Delta", Color = "pink" }
},
LinkDataSource = new List<LinkData> {
new LinkData { From = "n0", To = "n1" },
new LinkData { From = "n0", To = "n2" },
new LinkData { From = "n1", To = "n1" },
new LinkData { From = "n2", To = "n3" },
new LinkData { From = "n3", To = "n0" }
}
};
}
// define the model data
public class Model : GraphLinksModel<NodeData, string, object, LinkData, string, string> { }
public class NodeData : Model.NodeData {
public string Color { get; set; }
}
public class LinkData : Model.LinkData { }
...
The above diagram and model code creates the following graph.
<img width="200" height="200" src="https://godiagram.com/assets/images/screenshots/minimal.png">
License
The GoDiagram <a href="https://godiagram.com/license.html">software license</a>.
Copyright (c) 2022 Northwoods Software Corporation
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net6.0-windows7.0 is compatible. net7.0-windows was computed. net8.0-windows was computed. |
.NET Framework | net462 is compatible. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
-
.NETFramework 4.6.2
- SkiaSharp.Views.WindowsForms (>= 2.80.3)
- System.Collections.Immutable (>= 6.0.0)
- System.Net.Http (>= 4.3.4)
- System.Text.Json (>= 6.0.2)
-
net6.0-windows7.0
- SkiaSharp.Views.WindowsForms (>= 2.80.3)
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 | |
---|---|---|---|
10.0.0-beta4 | 259 | 7/5/2022 | |
10.0.0-beta3 | 348 | 4/18/2022 | |
10.0.0-beta2 | 173 | 4/11/2022 | |
10.0.0-beta1 | 174 | 4/7/2022 | |
10.0.0-alpha9 | 178 | 3/22/2022 | |
10.0.0-alpha8 | 184 | 2/11/2022 | |
10.0.0-alpha7 | 171 | 2/7/2022 | |
10.0.0-alpha6 | 185 | 1/6/2022 | |
10.0.0-alpha5 | 172 | 1/6/2022 | |
10.0.0-alpha4 | 187 | 12/30/2021 | |
10.0.0-alpha3 | 191 | 12/22/2021 | |
10.0.0-alpha2 | 211 | 12/16/2021 | |
10.0.0-alpha1 | 222 | 12/14/2021 |