MindFusion.Diagramming for WinForms常见问题集锦(十三):如何向节点添加多个文本?

原创|其它|编辑:吴园园|2020-01-02 14:33:17.050|阅读 30 次

概述:MindFusion.Diagramming for WinForms是一款能够帮助你轻松创建流程图和示意图的.NET控件。本文整理了用户在使用中遇见的相关问题,希望对您有所帮助。

# 您正在找协同办公软件吗?点击这里站长给您推荐 #

相关链接:

MindFusion.Diagramming for WinForms是一个能帮助你创建工作流和进程图表的.NET控件;数据库实体关系图表;组织图表;对象层次和关系图表;图表和树。它是基于对象-图表框,表格和箭头类型,将其归类分派给其他并结合成复杂的结构。该控件提供超过预先定义的50多种图表框,如自定义设计样式和对图表框着色等。

MindFusion.Diagramming for WinForms最新版本6.6现已发布,修复了多个功能带来崭新体验!赶快下载试用吧~

点击下载MindFusion.Diagramming for WinForms最新试用版

Q:如何向节点添加多个文本

A:将TableNode与多个单元格一起使用,或者将CompositeNode与多个TextComponents一起使用。如果您喜欢ShapeNodes,则可以设置CustomDraw = Additional并通过从DrawNode事件处理程序中调用e.Graphics.DrawString来绘制更多文本。

Q:可以覆盖图形以添加多个文本吗?

A:您可以创建一个自定义节点类并覆盖其DrawLocal方法-

代码:

class ShapeNodeEx : ShapeNode
{
	public string MoreText { get; set; }

	public override void DrawLocal(IGraphics graphics, RenderOptions options)
	{
		base.DrawLocal(graphics, options);
		graphics.DrawString(MoreText, EffectiveFont, Brushes.Black, 1, 1);
	}
} 
或者,将字符串数组保留为Tag属性的值,并在设置了CusotmDraw属性的DrawNode事件处理程序中循环绘制它们。
Q:如何创建一个ShapeNodeEx?
我无法做到:
ShapeNodeEx b = diagram.Factory.CreateShapeNode(pt,new SizeF(20,20));
A:代码
var b = new ShapeNodeEx(); 
b.Bounds = new RectangleF(...); 
diagram.Nodes.Add(b);
Q:如何将diagram.Nodes转换为ShapeNodeEx?

A:节点可以包含多种类型的实例。您可以使用

操作员在遍历集合时确定类型-
代码:
foreach (var node in diagram.Nodes)
{
    var exNode = node as ShapeNodeEx;
    if (exNode != null)
        ...
}
或使用Linq的OfType扩展名来过滤集合-
代码:
var exNodes = diagram.Nodes.OfType();

=====================================================

问答持续更新中>>>

MindFusion.Diagramming for WinForms现已加入在线订购,点击此处查看价格~

想要购买MindFusion.Diagramming for WinForms正版授权的朋友欢迎咨询在线客服哦~

MindFusion.Diagramming for WinForms常见问题集锦(十三):如何向节点添加多个文本?




标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动成果

文章转载自:MindFusion.Diagramming for WinForms

登录 慧都网发表评论


暂无评论...

为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
相关厂商
相关产品
MindFusion.Diagramming for WinForms

FlowChart.NET是一款能够帮助你轻松创建流程图和示意图的.NET控件,可以自定义设计样式和图表框颜色。

在线
客服
在线
QQ
咨询
电话
177-4994-3557
购物车 反馈 返回
顶部
在线客服系统
live chat