我们已经发布了FlowChart.NET的6.6版本。它包含以下新功能和改进:现在可以通过MindFusion.Animations命名空间中的Animation类对
Animations
Diagram项进行动画处理,例如,通过运行反弹动画使您吸引用户对节点的关注:
代码:
// start bouncing animation
var animationOptions = new AnimationOptions();
animationOptions.FromValue = node.Bounds.Y;
animationOptions.ToValue = node.Bounds.Y + 50;
animationOptions.Duration = 1000 * 5;
animationOptions.AnimationType = AnimationType.Bounce;
animationOptions.EasingType = EasingType.EaseOut;
var animation = new Animation(node, animationOptions);
animation.Start();
默认情况下,动画会更改节点的垂直位置。通过向Animation构造函数提供UpdateCallback函数,可以对其他节点属性进行动画处理,每次动画进行时都会调用该函数。Animation类实现了几种内置的动画和缓动类型,它们允许实现各种效果,例如反弹,滑入或滑出,淡入或淡出。也可以定义自定义动画功能。
动画布局
添加到Diagram和ContainerNode类的ArrangeAnimated方法可动画化项目从其原始位置到布局对象分配的新位置的移动。通过从相同位置上的重叠节点开始新的布局,可以用来创建爆炸效果,也可以通过将新节点添加到现有布局来创建插入效果。
JSON序列化
图现在可以JSON格式序列化。这可用于与MindFusion JavaScript图表库实现互操作性,或用于JSON文件或数据库中的常规存储。要将图序列化为JSON字符串,请调用其SaveToJson方法。要从其JSON表示反序列化图,请调用LoadFromJson方法。自定义项目类可以通过重写DiagramItem的SaveToJson和LoadFromJson方法,为其附加属性实现JSON序列化。必须通过调用RegisterItemClass方法并为clientClass参数提供字符串标识符来注册此类以进行序列化。
.NET Core程序集
(测试版)
MindFusion.Diagramming发行版现在包括.NET Core 3的程序集。目前不提供设计时支持,您可以仅通过代码将DiagramView和其他控件添加到表单。
其他
-
ContainerNode的Arrange方法使用指定的布局类在容器内排列子项。
-
为了与其他平台的MindFusion API保持一致,Diagram类现在提供了以布局对象作为参数的Arrange和ArrangeAsync(CLR 4.5+)方法。
-
Factory类的新CreateDiagramLink重载使在TreeViewNode项之间创建链接更加容易。
- 现在,使用继承的Control.Font属性而不是硬编码字体来呈现ZoomControl的缩放级别标签。