F: Es scheint, dass das Link Auto-Routing nicht funktioniert, wenn es ein großes Hintergrund-Shape in dem Diagramm gibt. Wie kann ich dies vermeiden?
A: Setzen Sie die Obstacle-Eigenschaft auf false:
backgroundShape.Obstacle = false
F: Ist es möglich, bei dem Auto-Routing das Verschieben des Ursprungs- oder Ziel-Ankers der Verlinkung zu unterbinden? Es ist wesentlich, dass die Verlinkungen an den Ankerpunkten stehen bleiben, die der Nutzer festgesetzt hat.
A: Die Einstellung von Anchoring auf Keep:
Diagram.RoutingOptions.Anchoring = Keepsollte das erledigen.
F: Ist es möglich, eine Änderungshistorie einer Workflow zu führen und zwei Versionen zu vergleichen?
A: Wenn Sie die Unterschiede zwischen zwei Überarbeitungen desselben Dokuments zeigen wollen, können Sie einen Änderungslog implementieren und die Unterschiede in einer Liste der Log-Einträge anzeigen.
Aktivieren Sie die Eigenschaften Diagram.UndoManager und UndoManager.UndoEnabled und behandeln Sie das Ereignis Diagram.ActionRecorded. In dem Event-Handler erstellen Sie einen Logeintrag in Abhängigkeit von der gespeicherten Anweisung. Fügen Sie einen Zeitstempel jedem Satz zu, so dass Sie das Datum der Dokumentänderung mit der Zeit der Logsätze vergleichen können.
Sie können die Sammlung der Log-Einträge serialisierbar machen und sie in dem Diagram.Tag speichern.
Eine andere Möglichkeit ist das Zuordnen von eindeutigen IDs jedem DiagramItem.Tag. Dann können Sie die Dokumentänderungen überprüfen, ob Items mit bestimmten IDs in beiden Versionen existieren. Auf diese Weise erkennen Sie, wenn ein DiagramItem zugefügt oder entfernt wurde. Wenn Elemente mit einer bestimmten ID in beiden Dokumenten existieren, können Sie weiter deren Eigenschaftenwerte vergleichen, zum Beispiel, Text, Bounds, usw..
F: Wie kann man Kundendaten den Items in dem Diagramm (Knoten und Links) zuordnen?
A: Sie können Ihre eigene Klasse erstellen, die von ShapeNode abgeleitet wird, und eine ID Eigenschaft zufügen. Sie können es den Anwendern erlauben, Items von Ihrem Typ zu erstellen, indem Sie das view.Behavior auf Custom und view.CustomNodeType auf typeof(Ihre_Knoten_Klasse) einstellen. In dem Beispielprojekt "Icon Nodes" wird gezeigt, wie Custom-Typen mit FlowChart.NET angewendet werden.
Eine einfachere Lösung können Sie realisieren, indem die ID der Tag-Eigenschaft des Items zugeordnet wird. Ein zusätzlicher "Bonus" besteht darin, dass Sie die Methode FindNode des Diagramms zum Suchen von Knoten nach deren Tag/ID anwenden können.
F: Wo kann ich eine Bibliothek von Hydraulik-, Pneumatik- und Elektriksymbole für FlowChart.NET finden?
A: Derzeitig bieten wir solche Symbole nicht an. Stattdessen können Sie Ihre eigenen Shape-Definitionen erstellen, deren Image-Eigenschaft auf Bitmap oder Metadatei mit dem entsprechenden Symbol eingestellt wird. Sehen Sie sich das Beispiel über Symbolbibliothek "LogicGates" an, das in dem Flowchart.NET Samples-Verzeichnis installiert wird.