我想尝试创建一个图表制作工具(类似于您可以在SQL Server 2005中创建的实体关系图,或者您可以在Microsoft Visual Studio中创建的类图)
IE中。我想创建框,在其中放置文本,能够编辑此文本并在框之间绘制线条。
之前我从未做过这种编程,所以我不知道从哪里开始。
我是否使用XAML或创建画布并进入图形编程?
我知道有一些图表工具,但我真的想通过自己做这些事情来找出这些东西。
答案 0 :(得分:2)
嗯,这里是the basis of one on CodeProject,包含源代码和教程。对于WPF。
答案 1 :(得分:2)
WPF / XAML是一个很好的开始这样的地方。你将要研究一般的WPF,重点是自定义控件(用于表格)和绘图线条(用于关系)。
答案 2 :(得分:1)
你选择的渲染引擎有些随意 - 无论你使用什么框架,你都要做很多工作。
在C#和WinForms中实现了这样一个系统,我可以说老实说这是一条不好的路。坚持WPF / Silverlight。结合趋势,编写Silverlight 4应用程序,以便在多个平台上部署到桌面。
我发现你必须做出很多高级决策,这些决定比你使用的渲染引擎更重要。其中一些是:
你需要多少缩放和平移?
您需要分组吗?一旦你在屏幕上看到几张桌子,你很快就会意识到能够隐藏一些细节非常有用。能够将盒子分组并以标志性形式显示该组作为“元”盒允许用户摆脱不必要的干扰。
您需要搜索吗?再次试图打击“屏幕太多”问题,最好有一个搜索框,隐藏与搜索不匹配的所有内容(灰色,隐藏等)
用户如何与键盘交互。由于您的观众可以包括程序员,因此您只需要考虑使用键盘即可编辑所有图表。这意味着可以智能地处理焦点以及使用哪些热键。
答案 3 :(得分:1)
正如弗兰克指出的那样 - 创建交互式图形是一件大事。许多公司已经在那里,花了数百万美元来完善它。这取决于你想要多少交互性。我建议您选择一个可扩展的图形应用程序或具有适合您预算的API。更好的是(我认为)在CAD领域,例如AutoCAD(£4k /座),TurboCAD,VeCAD(200英镑/座位);并且所有包装都允许您在自己的产品中转售产品。