2010-01-05 7 views
15

Devo essere in grado di generare diagrammi di dipendenza a livello di codice. Mi piacerebbe che fosse in grado di generare un sacco di scatole con etichette e connettori che le collegavano, e idealmente il componente le posizionerebbe automaticamente su una superficie di progetto che potrebbe poi essere riorganizzata manualmente.Componente di diagramma di origine libera o open source per WinForms

Sto utilizzando WinForms e C# 2.0 (VS2005).

MODIFICA: Tuttavia, poiché sarà uno strumento interno, probabilmente posso utilizzare 3.5 SP1 e WPF se ci sono suggerimenti in quell'arena.

Deve essere libero o open source.

Qualche consiglio?

risposta

4

Si potrebbe voler dare un'occhiata a GraphViz che viene distribuito sotto licenza CPL (cioè gratuito). Non è esattamente per .NET/WinForms ma può essere comunque utile. Lo scopo principale della biblioteca è visualizzare i grafici (e il diagramma delle dipendenze è effettivamente un grafico [direzionale]). Puoi usarlo per ottenere un'immagine (layout grafico) o una serie di punti (coordinate per le tue voci).

+0

Interessante. Immagino di poter scrivere un codice che trasformi il mio input in qualsiasi formato GraphViz e lo esegua. Vale la pena indagare - potrebbe essere meglio di reinventare la ruota. –

+0

Grazie per questo, funziona bene anche se i diagrammi sono grandi e saranno difficili da formattare per la stampa. Sarebbe bello se potessi fare un piccolo aggiustamento manuale - conosci un modo? Mi chiedo se renderizzo come SVG posso importare in Visio? –

+0

Purtroppo non ho provato nulla di questo (non era necessario) quindi non posso aiutarti qui. – AlexS

6

Ecco alcuni riferimenti che potrebbero essere interessanti per voi:

Diagrams.NET

Diagram.NET è un open-source strumenti di diagrammi scritti interamente in C#. Inserisci il controllo Diagram.NET WinForm nel modulo e, come Microsoft Visio®, l'utente può disegnare forme e collegamenti. Con un po 'di codice puoi controllare, modificare, aggiungere ed eliminare questi elementi.

Microsoft Grafico Controlli

The samples environment for Microsoft Chart Controls for .NET Framework contiene più di 200 campioni per entrambi ASP.NET e Windows Form . Gli esempi coprono tutte le principali funzionalità nei controlli grafici per .NET Framework. Permettono di vedere i controlli del grafico in azione e di usare il codice come modelli per il proprio web e le applicazioni di windows .

8

Troppo tardi per l'interrogante, ma forse interessante per i ricercatori:

Nshape

NShape è un framework diagramma di progettazione open source per .NET WinForms. Gli sviluppatori di software utilizzano NShape per integrare le funzionalità di diagrammi nelle loro applicazioni.Utilizzando NShape, le applicazioni consentono agli utenti di di visualizzare, annotare, modificare e creare diagrammi come diagrammi di flusso, schemi di cablaggio o grafici di progetto. NShape è open source e ha una doppia licenza che consente di essere utilizzato gratuitamente nei progetti open source e per un costo di licenza in progetti commerciali.

0

Qui è uno che rende alla HTML5 (Si può facilmente estendere a Visio) da GridWizard/Github Codice Fonte:https://github.com/gridwizard/SimpleFlowDiagram Wordpress doc:https://gridwizard.wordpress.com/2015/03/25/simple-c-library-to-render-graph-to-flowchart/

Unico inconveniente è, è necessario un spettatore per visualizzare HTML5. In alternativa, SimpleFlowDiagramLib già calcola Node.x e Node.y - si possono rendere a Winform/WPF da soli (ma poi è necessario il codice di rendering te stesso)

2

OpenDiagram

Open Diagram è la libreria open source definitiva .net diagramming per l'ambiente .Net framework winforms.

Utilizzare Open Diagram per aggiungere visualizzazioni di dati interattive alle applicazioni .net .

L'ho provato con WinForms, funziona molto bene.