WinForms的免费或开源图表组件

我需要能够以编程方式生成依赖关系图。 我希望它能够生成一堆带有标签和连接器的盒子,理想情况下,组件会将它们自动定位到设计表面上,然后可以手动重新排列。

我正在使用WinForms和C#2.0(VS2005)。

编辑:但是,因为它将是一个内部工具,如果在该领域有任何建议,我可以使用3.5 SP1和WPF。

必须是免费或开源的。

有什么建议?

您可能想看看在CPL下分发的GraphViz (即免费)。 它不完全适用于.NET / WinForms,但无论如何都可能有用。 该库的主要目的是可视化图形(并且依赖图实际上是[方向]图形)。 您可以使用它来获取图像(图形布局)或点arrays(项目的坐标)。

对提问者来说太迟了,但对研究人员来说可能很有意思:

NShape

NShape是.NET WinForms的开源图设计框架。 软件开发人员使用NShape将图表function集成到他们的应用程序中。 使用NShape,应用程序允许用户查看,注释,修改和创建流程图,布线方案或项目图表等图表。 NShape是开源的,拥有双重许可,允许在开源项目中免费使用,并在商业项目中获得许可费。

您是否尝试过Sukram的CodeProject系列文章:

WPF图设计师

以下是一些可能对您有用的参考资料:

Diagrams.NET

Diagram.NET是一个完全用C#编写的免费开源图表工具。 将Diagram.NET WinForm Control放入您的表单中,与MicrosoftVisio®一样,用户可以绘制形状和链接。 使用某些代码,您可以控制,更改,添加和删除这些元素。

Microsoft图表控件

Microsoft Chart Control for .NET Framework的示例环境包含ASP.NET和Windows窗体的 200多个示例。 这些示例涵盖了.NET Framework图表控件中的所有主要function。 它们使您能够查看Chart控件的运行情况,并将代码用作您自己的Web和Windows应用程序的模板。

OpenDiagram

Open Diagram是.Net框架winforms环境的权威开源.net图表组件库。

使用Open Diagram将交互式数据可视化添加到.net应用程序。

我用WinForms尝试过,效果很好。

我和你有类似的要求。 这是一个用于绘制图表的开源解决方案。 它来自Microsoft和用C#编写的示例。

https://github.com/Microsoft/automatic-graph-layout

这是从GridWizard / Github呈现HTML5 (您可以轻松扩展到Visio)的源代码: https //github.com/gridwizard/SimpleFlowDiagram WordPress doc: https //gridwizard.wordpress.com/2015/03/25 /简单-C-库到渲染图形到流程图/

缺点是,您需要一个查看器来显示HTML5。 或者,SimpleFlowDiagramLib 已经计算了Node.x和Node.y – 您可以自己将它呈现给Winform / WPF(但是您需要自己编写代码)