大家好,我是宝弟!
今天给大家推荐一款基于.Net WinForm的节点编辑器STNodeEditor。纯GDI+绘制 使用方式非常简洁 提供了丰富的属性以及事件 可以非常方便的完成节点之间数据的交互及通知。.
当有很多应用程序(模块) 它们之间需要相互调用传递数据来完成一整套流程的工作 开发单一功能的应用程序(模块)相对比较容易 而实现一整套很多功能相互调用的应用程序相对比较繁琐 此套框架开发者只需要定义好传递的数据类型 然后分别实现单一节点功能 至于执行流程交给框架和用户布线即可。
STNodeEditor拥有非常强大的功能 支持画布的移动和缩放 可以对节点位置以及连线进行锁定 连线时候会自动检测数据类型是否兼容 以及连线是否重复或者构成环形线路等问题.
-
拖动标题移动节点
-
右击标题弹出菜单 (需要设置ContextMenuStrip)
-
拖动连接点进行连线
-
右击连线断开连接
-
中键拖动移动画布 (若笔记本触摸板支持 可二指拖动)
-
CTRL+鼠标滚轮 缩放画布
STNodeTreeView的使用简单 无需像System.Windows.Forms.TreeView需要自行去构造树目录
通过使用STNodeAttribute标记STNode子类可直接设置需要在STNodeTreeView中显示的路径 以及希望在STNodePropertyGrid中显示的信息
[STNode("AA/BB", "Author", "Mail", "Link", "Description")]
public class MyNode : STNode
{
protected override void OnCreate() {
base.OnCreate();
this.Title = "TreeViewTest";
}
}
//添加到 STNodeTreeView 中
stNodeTreeView1.AddNode(typeof(MyNode));
可以看到STNodeTreeView中出现了添加的节点 并且自动构建好了路径 节点可以预览并且直接被拖拽到STNodeEditor中进行添加。
至于这个开源节点编辑器到底应该用在哪,目前我是没弄清楚。希望有了解的大佬告诉我吧
资源获取方式
https://github.com/DebugST/STNodeEditor