I am dev开发者_JS百科eloping a windows forms application and I want to add the ability for the user to create logical flow diagrams. Something similar to what is show in this screenshot: http://www.cocoontech.com/w/images/8/82/Premise_ObjectDiagram.png
Are there controls that can be used to do something like this? At least something that I can use as each block in the diagram. I was thinking of just using panels for them, but there must be an easier way.
Your link is broken. However, there are many diagramming components in .NET. Some of them are:
- NWoods Diagrams: http://www.nwoods.com/
- SyncFusion essential diagrams: http://www.syncfusion.com/products/user-interface-edition/wpf/Diagram
- yWorks' yFiles: http://www.yworks.com/en/index.html
I don't know your exact requirements, but maybe you can leverage the Workflow Foundation (WF). You can create an application in which you host the workflow designers. If you're interested in using it I'd suggest the WF books by Bruce Bukovics:
https://www.apress.com/index.php/author/author/view/id/2050
The Pro WF (Windows Workflow in .NET 3.0) book contains an entire chapter (#17) which explains how you can host the designers in your own application. You could use it to visually create simple work flows that illustrate to the user how the logic is applied.
I am not 100% sure if this is appropriate here to link to specific products but since others do and what I am going to link to is 100% free code, let me share my solution too. Excuse me if I shouldn't.
I have faced the same (if I understand the question correctly) problem once and the only ready free solution I've found was NodeGraph. However, it seemed (and seems) abandoned and lacking what I consider proper model-view separation (I wanted it to do view only but found the actual model manipulation logic being a part of it).
So I've forked it and came up with FlowGraph which looks and feels the same for from the application user point of view (my sincere reverence to the original NodeGraph designer - it's an "eye-candy" IMHO, I've enjoyed how it looks and found nothing serious to improve in this aspect) but is some ways (listed on the project page) different from the developer's perspective. It can look abandoned too as I've uploaded the last version back in 2014 (3 years ago as by now) but it isn't - it is just stable (I am not aware of any problems with it despite it enjoying a fair degree of popularity) so far and I plan a major update soon.
精彩评论