|
Create Interactive Diagrams
by Don Kiely
July 22, 2005
Dundas Diagram for .NET 1.0 is a toolkit for implementing diagrams in .NET applications. When I ripped open the product, I expected yet another simplistic graphics tool for creating organizational charts, but what I found was an impressive set of tools for designing diagrams, hosting them, and embedding them in any kind of graphical .NET application, complete with a comprehensive object model for writing code to automate the diagram. Dundas Diagram lets you create interactive, automated diagrams, ranging from complex charts that users can modify dynamically to complete process simulations that model complex manufacturing processes (see Figure 1).
Dundas categorizes this product in three parts: Diagram Editor, Diagram Host, and Diagram Object Model. You can create diagrams either using the GUI editor or using the object model programmatically. The GUI editor is a complete development environment in its own right, with a library of built-in shapes and templates. It has an API that you can write .NET code against, as well as support for scripting the various objects that make up a diagram. The "script" used is actually full C# or VB.NET code, allowing you to respond to events to make the diagram highly responsive to users. The editor itself is usable either as a standalone tool or a component you can embed in custom applications.
The product includes components for hosting diagrams in both Windows and Web forms. Both versions of the component give users a rich, interactive experience with the diagrams, including runtime customization. I was confused initially by the way the company uses the word "hosted," so I expected a built-in server to be included with the product. However, this is not a server application as such, although you can certainly host diagrams from a central server. The rich object model enables complete programmatic control so you can create diagrams at run time as well as build individual diagram elements that have embedded business logic and events that you can use to tie together all the elements in a diagram. The object model provides plenty of flexibility, but you'll have to write a fair amount of custom code to manipulate the objects.
Back to top
|