首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在.NET中创建基于思维导图的树状视图窗口应用程序

如何在.NET中创建基于思维导图的树状视图窗口应用程序
EN

Stack Overflow用户
提问于 2011-12-21 14:38:00
回答 1查看 2.6K关注 0票数 0

我希望为我的.NET窗口应用程序创建一个直观的树状视图结构(类似于思维导图)。

thisthis类似的东西

我最初计划开发一个示例应用程序,其中我的应用程序只读取底层的结构化XML,以创建类似于可视化的思维导图,并将其显示给用户。用户可以选择所显示的树节点中的任何一个。如果该节点有子节点,则当用户点击相应的父节点时会显示出来。

为了实现这一点,我首先需要一个正确的方向上的提示或帮助。任何帮助我们都深表感谢

EN

回答 1

Stack Overflow用户

发布于 2011-12-22 21:38:27

我以前用WPF从头开始做过网络图,但没有做过思维导图。这并不容易,每一步都需要几页来解释。因此,我在下面快速启动了我如何完成我的网络图。我认为除了节点和节点连接器的布局和可视化表示之外,没有太大的区别。

首先从你的收藏开始。MSDN在这里有一个杀手级的有向图集合:http://msdn.microsoft.com/en-us/library/ms379574(v=vs.80).aspx

在建立集合之后,您将需要扩展Panel类,以便它可以为您执行布局。我不知道任何现有的思维导图布局面板,但这里有一个到径向面板布局的链接:http://msdn.microsoft.com/en-us/library/ms771363(v=vs.90).aspx。它应该会向您显示在自定义布局中放置内容所需的步骤。

您还需要一种直观地表示有向图节点的方法。关于WPF的美妙之处在于你可以创建自己的UserControls,如果你的面板是为正确布局而创建的,它将为你的自定义控件执行所有的布局工作。我的网络地图只是一个以椭圆为背景的UserControl,被扔进了一个径向面板。

最后一步是检查图形集合并在连接的节点之间绘制连接器。在我的有向图集合中,我添加了一个名为Tag的object类型的属性,并存储了该节点的UserControl版本。这样,我就可以知道连接的UserControls的坐标,并且可以用PolyLine将它们连接起来。我认为对你来说不同的是,你会希望你的连接器是Image。

这是一个快速的版本。我很想在这里发布更多的源代码,但我写它是为了工作,他们会杀了我的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8585954

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档