mirror of
https://gitee.com/akwkevin/aistudio.-wpf.-diagram
synced 2026-04-02 15:16:37 +08:00
94
README.md
94
README.md
@@ -115,7 +115,7 @@ var result = type.InvokeMember("Execute",
|
||||
### 代码编辑模块的实现
|
||||
选择AvalonEdit控件,另外为了使用VS2019_Dark的黑色皮肤,引用官方Demo中的HL和TextEditlib实现自定义换肤。
|
||||
|
||||

|
||||

|
||||
|
||||
官方Demo的换肤写的超级复杂,看不懂,但是我们只要理解换肤的核心部分就是动态资源字典,因此我简化下,改进后的核心换肤代码如下:
|
||||
|
||||
@@ -252,9 +252,9 @@ TextEditorThemeHelper.SetCurrentTheme("Light");
|
||||
是不是超级简单。
|
||||
### 代码编辑模块的编译与测试。
|
||||
|
||||

|
||||

|
||||
|
||||

|
||||

|
||||
|
||||
### WPF打印控制台数据
|
||||
|
||||
@@ -462,57 +462,57 @@ public static Dictionary<string, List<PropertyInfo>> GetPropertyInfo(Type type)
|
||||
### 2023年4月5号更新内容(本次更新主要仿照百度脑图):
|
||||
1.思维导图、目录组织图、鱼骨头图、逻辑结构图、组织结构图,入口在文件新建下。
|
||||
|
||||

|
||||

|
||||
|
||||
2.思维导图工具栏(只有思维导图模式下可见)
|
||||
|
||||

|
||||

|
||||
|
||||
2.1插入链接
|
||||
|
||||

|
||||

|
||||
|
||||
2.2插入图片
|
||||
|
||||

|
||||

|
||||
|
||||
2.3插入备注
|
||||
|
||||

|
||||

|
||||
|
||||
2.4插入优先级
|
||||
|
||||

|
||||

|
||||
|
||||
2.5插入进度
|
||||
|
||||

|
||||

|
||||
|
||||
2.6切换类型
|
||||
|
||||

|
||||

|
||||

|
||||

|
||||

|
||||

|
||||

|
||||

|
||||
|
||||
2.7切换主题
|
||||
|
||||

|
||||

|
||||

|
||||

|
||||

|
||||

|
||||

|
||||

|
||||

|
||||

|
||||

|
||||

|
||||
|
||||
2.8还有展开节点,全选,居中,适应窗体大小等功能,不在介绍。
|
||||
|
||||
3 添加搜索功能(不仅仅思维导图可以使用)
|
||||
|
||||

|
||||

|
||||
|
||||
4 最后为了方便大家使用,我封装了一个思维脑图的控件MindEditor,可以直接绑定json格式的数据,数据改变,可以直接加载应用。(见[AIStudio.Wpf.DiagramDesigner.Demo](https://gitee.com/akwkevin/aistudio.-wpf.-diagram/tree/master/Demos/AIStudio.Wpf.DiagramDesigner.Demo))
|
||||
|
||||

|
||||

|
||||
|
||||
### 2023年2月5号更新内容:
|
||||
本次更新主要参照了一个Blazor的Diagram的画线算法,链接地址:[https://github.com/Blazor-Diagrams/Blazor.Diagrams](https://github.com/Blazor-Diagrams/Blazor.Diagrams),感谢作者。
|
||||
@@ -523,7 +523,7 @@ public static Dictionary<string, List<PropertyInfo>> GetPropertyInfo(Type type)
|
||||
### 4.新增快捷键自定义扩展,用户可根据自己的习惯定义快捷键。
|
||||
### 5.封装了一个标准的工作流控件FlowchartEditor,具体使用可以参照开源权限管理框架种的用法: https://gitee.com/akwkevin/aistudio.-wpf.-aclient
|
||||
|
||||
nuget地址:
|
||||
nuget地址:
|
||||
|
||||
### 6.连接上添加动画:路径动画效果和线条流动效果。
|
||||
### 7.改变结构,使用户更容易自定义自己的样式,覆盖系统默认样式。
|
||||
@@ -583,7 +583,7 @@ nuget地址:
|
||||
|
||||
- 1 Simple 简单示例
|
||||
|
||||

|
||||

|
||||
- 2 Locked 锁定节点
|
||||
- 3 Events 事件(暂未完成,敬请期待)
|
||||
- 4 DynamicInsertions 动态插入(暂未完成,敬请期待)
|
||||
@@ -591,50 +591,50 @@ nuget地址:
|
||||
- 6 Zoom 放大缩小
|
||||
- 7 SnapToGrid 对齐到网格
|
||||
|
||||

|
||||

|
||||
- 8 DragAndDrop 拖拽
|
||||
|
||||

|
||||

|
||||
- 9 Nodes 节点示例
|
||||
- - 9.1 Svg svg样式
|
||||
|
||||

|
||||

|
||||
- - 9.2 CustomDefinedNode 自定义节点
|
||||
|
||||

|
||||

|
||||
- - 9.3 PortlessLinks 无Port的node连接
|
||||
|
||||

|
||||

|
||||
- - 9.4 GradientNode 渐变色node
|
||||
|
||||

|
||||

|
||||
- - 9.5 Rotate 旋转node(连接线还需要优化,还算连接在旋转之前的位置上)
|
||||
|
||||

|
||||

|
||||
- 10 Links 连线示例
|
||||
- - 10.1 Snapping 连接线靠近节点自动连接
|
||||
- - 10.2 Labels 连接线上的文字(支持多处)
|
||||
|
||||

|
||||

|
||||
- - 10.3 Vertices 连接线上的中间节点
|
||||
|
||||

|
||||

|
||||
- - 10.4 Markers 箭头,支持自定义
|
||||
|
||||

|
||||

|
||||
- - 10.5 Routers 连线模式
|
||||
|
||||

|
||||

|
||||
- - 10.6 PathGenerators 连线算法
|
||||
|
||||

|
||||

|
||||
- 11 Ports 连接点示例
|
||||
- - 11.1 ColoredPort 彩色连接点,相同颜色的连接点才能连接
|
||||
|
||||

|
||||

|
||||
- - 11.2 InnerPort 内部连接点
|
||||
|
||||

|
||||

|
||||
- 12 Groups 分组示例
|
||||
- - 12.1 Group 分组
|
||||
- - 12.2 CustomDefinedGroup 自定义分组
|
||||
@@ -645,33 +645,33 @@ nuget地址:
|
||||
- - 13.3 FontSize 字体大小
|
||||
- - 13.4 ColorText 彩色字体
|
||||
|
||||

|
||||

|
||||
- - 13.5 OutlineText 轮廓文本
|
||||
- 14 Customization 自定义
|
||||
- - 14.1 CustomNode 覆盖默认节点样式
|
||||
|
||||

|
||||

|
||||
- - 14.2 CustomLink 设置线条连接样式
|
||||
|
||||

|
||||

|
||||
- - 14.3 CustomPort 覆盖默认连接点样式
|
||||
|
||||

|
||||

|
||||
- - 14.4 CustomGroup 覆盖默认分组样式
|
||||
|
||||

|
||||

|
||||
- 15 Algorithms 算法
|
||||
- - 14.6 ReconnectLinksToClosestPorts 重新计算,按最近的连接点连接。
|
||||
- 15 Animations
|
||||
- - 15.1 PathAnimation 动画路径
|
||||

|
||||

|
||||
- - 15.2 LineAnimation 线条流动动画
|
||||

|
||||

|
||||
- 16 Editor
|
||||
- - 16.1 FlowchartEditor 工作流封装控件
|
||||
采用兼容主流的diagram的序列化格式
|
||||
|
||||

|
||||

|
||||
|
||||
`{"Nodes":[{"Kind":1,"UserIds":null,"RoleIds":null,"ActType":null,"Id":"e0f2c29c-2c89-4c0c-857e-35eb0b121d7e","ParentId":null,"Name":null,"Color":"#1890ff","Label":"开始","Width":100.0,"Height":80.0,"X":12.5,"Y":147.5,"Type":"FlowchartNode","ZIndex":0,"PortAlignmentList":["Top","Bottom","Left","Right","Top","Bottom","Left","Right"]},{"Kind":3,"UserIds":[],"RoleIds":[],"ActType":null,"Id":"716f64ec-bcdb-438c-9748-9546abf990cc","ParentId":null,"Name":null,"Color":"#1890ff","Label":"节点1","Width":100.0,"Height":80.0,"X":137.5,"Y":147.5,"Type":"FlowchartNode","ZIndex":2,"PortAlignmentList":["Top","Bottom","Left","Right","Top","Bottom","Left","Right"]},{"Kind":4,"UserIds":null,"RoleIds":null,"ActType":null,"Id":"3cd6c332-6b5b-44ef-96c4-c7aef66fd5dd","ParentId":null,"Name":null,"Color":"#1890ff","Label":"条件节点","Width":100.0,"Height":80.0,"X":262.5,"Y":147.5,"Type":"FlowchartNode","ZIndex":3,"PortAlignmentList":["Top","Bottom","Left","Right","Top","Bottom","Left","Right"]},{"Kind":3,"UserIds":[],"RoleIds":[],"ActType":null,"Id":"7d953234-ddff-4701-a52a-bf6460ffa7b9","ParentId":null,"Name":null,"Color":"#1890ff","Label":"节点2","Width":100.0,"Height":80.0,"X":387.5,"Y":22.5,"Type":"FlowchartNode","ZIndex":6,"PortAlignmentList":["Top","Bottom","Left","Right","Top","Bottom","Left","Right"]},{"Kind":3,"UserIds":[],"RoleIds":[],"ActType":null,"Id":"7dfd4102-2751-42c7-a386-adcfcca27ede","ParentId":null,"Name":null,"Color":"#1890ff","Label":"节点3","Width":100.0,"Height":80.0,"X":387.5,"Y":272.5,"Type":"FlowchartNode","ZIndex":7,"PortAlignmentList":["Top","Bottom","Left","Right","Top","Bottom","Left","Right"]},{"Kind":2,"UserIds":null,"RoleIds":null,"ActType":null,"Id":"ad57e53f-8860-4212-9afb-f67e14eecbc8","ParentId":null,"Name":null,"Color":"#1890ff","Label":"结束","Width":100.0,"Height":80.0,"X":512.5,"Y":147.5,"Type":"FlowchartNode","ZIndex":10,"PortAlignmentList":["Top","Bottom","Left","Right","Top","Bottom","Left","Right"]}],"Links":[{"Id":"65f6432f-2084-462d-93d8-a6b3ff889182","Color":"#FF808080","SelectedColor":"#FF000000","Width":2.0,"Label":null,"SourceId":"e0f2c29c-2c89-4c0c-857e-35eb0b121d7e","TargetId":"716f64ec-bcdb-438c-9748-9546abf990cc","SourcePortAlignment":"Right","TargetPortAlignment":"Left","Type":"DiagramLink","Router":null,"PathGenerator":null,"SourceMarkerPath":null,"SourceMarkerWidth":null,"TargetMarkerPath":null,"TargetMarkerWidth":null},{"Id":"7d1dcf2d-ee69-4c24-84ff-3a99b6555692","Color":"#FF808080","SelectedColor":"#FF000000","Width":2.0,"Label":null,"SourceId":"716f64ec-bcdb-438c-9748-9546abf990cc","TargetId":"3cd6c332-6b5b-44ef-96c4-c7aef66fd5dd","SourcePortAlignment":"Right","TargetPortAlignment":"Left","Type":"DiagramLink","Router":null,"PathGenerator":null,"SourceMarkerPath":null,"SourceMarkerWidth":null,"TargetMarkerPath":null,"TargetMarkerWidth":null},{"Id":"cd18c02f-0cdb-4eb5-9793-b9db87eeea09","Color":"#FF808080","SelectedColor":"#FF000000","Width":2.0,"Label":"条件1","SourceId":"3cd6c332-6b5b-44ef-96c4-c7aef66fd5dd","TargetId":"7d953234-ddff-4701-a52a-bf6460ffa7b9","SourcePortAlignment":"Top","TargetPortAlignment":"Left","Type":"DiagramLink","Router":null,"PathGenerator":null,"SourceMarkerPath":null,"SourceMarkerWidth":null,"TargetMarkerPath":null,"TargetMarkerWidth":null},{"Id":"69bbb083-8eb4-403b-937a-b0f0d3c80eb0","Color":"#FF808080","SelectedColor":"#FF000000","Width":2.0,"Label":"条件2","SourceId":"3cd6c332-6b5b-44ef-96c4-c7aef66fd5dd","TargetId":"7dfd4102-2751-42c7-a386-adcfcca27ede","SourcePortAlignment":"Bottom","TargetPortAlignment":"Left","Type":"DiagramLink","Router":null,"PathGenerator":null,"SourceMarkerPath":null,"SourceMarkerWidth":null,"TargetMarkerPath":null,"TargetMarkerWidth":null},{"Id":"d640c547-5ba8-428c-8d65-74874b1d28bd","Color":"#FF808080","SelectedColor":"#FF000000","Width":2.0,"Label":null,"SourceId":"7d953234-ddff-4701-a52a-bf6460ffa7b9","TargetId":"ad57e53f-8860-4212-9afb-f67e14eecbc8","SourcePortAlignment":"Right","TargetPortAlignment":"Top","Type":"DiagramLink","Router":null,"PathGenerator":null,"SourceMarkerPath":null,"SourceMarkerWidth":null,"TargetMarkerPath":null,"TargetMarkerWidth":null},{"Id":"74ad5635-c96d-42e8-9c0a-42c613c66b7a","Color":"#FF808080","SelectedColor":"#FF000000","Width":2.0,"Label":null,"SourceId":"7dfd4102-2751-42c7-a386-adcfcca27ede","TargetId":"ad57e53f-8860-4212-9afb-f67e14eecbc8","SourcePortAlignment":"Right","TargetPortAlignment":"Bottom","Type":"DiagramLink","Router":null,"PathGenerator":null,"SourceMarkerPath":null,"SourceMarkerWidth":null,"TargetMarkerPath":null,"TargetMarkerWidth":null}]}`
|
||||
|
||||
@@ -679,7 +679,7 @@ nuget地址:
|
||||
|
||||
近期会持续更新,欢迎大家光临。
|
||||
最后上一个动画流程图。
|
||||

|
||||

|
||||
|
||||
17博客园文章地址 https://www.cnblogs.com/akwkevin/p/15047453.html
|
||||
|
||||
|
||||
Reference in New Issue
Block a user