如何在.NET中构建图表应用程序?

时间:2009-06-11 05:41:42

标签: c# .net user-interface drawing diagram

我想编写一个GUI座位应用程序,允许用户绘制和注释座位区域的简单“地图”。

最终结果可能看起来有点像Visio,但专门用于操纵我的“座位”数据模型而不是生成文件。

在Java-land中,有图形编辑框架(GEF) - 在.NET领域有这样的东西吗?我应该只使用System.Drawing.Drawing2D原语并自己处理它吗?

5 个答案:

答案 0 :(得分:4)

以下是来自Nevron的产品。这是付出的,但自己做这一切将花费大量的时间和精力。

<{> Open DiagramEasyDiagram.net位于Codeplex。请务必下载并查看他们的代码。

答案 1 :(得分:2)

图表有Netron Library。它是开源的,使用GDI +。

答案 2 :(得分:2)

结帐NShape。它是一个用C#编写的开源图表框架,非常强大。它的控件是WinForms控件,但你也可以将它用于WPF。

答案 3 :(得分:1)

您可以考虑使用Visual Studio SDK中的DSL Toolkit。它允许您通过首先创建域模型,然后创建允许用户创建或编辑该模型实例的图形表示法来创建图形DSL设计器。

您很可能能够创建一个看起来像座位区的图形符号。这样,您的用户不仅可以“绘图”,还可以生成包含图表内容的填充域模型的文件。

答案 4 :(得分:0)

查看我们的MetaDraw组件 - www.MetaDraw.com MetaDraw旨在使这样的应用程序变得容易。 MetaDraw将支持背景图像和注释图层 您可以将用户置于各种编辑模式 - 线条,曲线,文本,形状等。 每个绘制的元素都是不同的 - 就像在Visio中一样,因此您可以允许用户选择对象并移动它们或调整它们的大小。每个对象都可以有多个隐藏标签(如座位号或数据库记录指针)。您可以识别用户选择的对象(例如,当用户单击座位22时执行某些操作)。您可以通过代码动态修改属性 - 例如搜索座位22并更改其填充颜色。当然,您也可以滚动,缩放,打印,保存为各种格式等。