我的应用程序(C#4,WinForms,实体框架,SQL Server 2008)维护着一个互连对象的图形,每个对象都有一些简单的成员字段和一组多个定向(进出)一对一链接到其他对象。
我想让用户能够以某种方式直观地查看和编辑此图表,创建和删除连接,修改对象属性值以及引入/删除对象。
我认为必须有一个框架(在列表中是一种原始类型),因为视觉模型设计工具很常见。你知道吗?
答案 0 :(得分:2)
几年前,我与a project合作,使用这种工具构建教育解析软件。使用的工具是Graphviz,特殊的点和点。如果您不知道它是什么,那么这是一个简短的描述:
Graphviz是开源图 可视化软件。它有几个 主图布局程序。
Graphviz布局程序 简单描述图表 文本语言,并制作图表 几种有用的格式,如图像 和SVG的网页,Postscript为 包含在PDF或其他文件中; 或显示在交互式图表中 浏览器。 (Graphviz也支持GXL, XML方言。)
Graphviz有许多有用的功能 具体图表,例如选项 颜色,字体,表格节点布局, 线条样式,超链接和自定义 形状。
这是构建的图形的一个示例:
alt text http://www.ucse.edu.ar/fma/sepa/images/earley_un_clasico.png
您应该注意,这不是本机.NET工具,但当然,无论如何都可以使用它。
答案 1 :(得分:0)
这个答案可能会有点晚,但微软有自己的.Net库叫Microsoft Automated Graph Layout(MSAGL),它看起来(至少在视觉上)与GraphViz,或者特别是DOT相似。它的名称随着时间的推移而发生变化,因为它是在MS Labs / MS Research中开发的。
根据产品页面,它包含三个模块:
Microsoft.MSAGL.dll
,Microsoft.MSAGL.Drawing.dll
和Microsoft.MSAGL.GraphViewerGDIGraph.dll
,它似乎是Windows窗体自定义控件。这个软件很久以前就已经免费,但不幸的是,它已经成为付费产品。