LayoutManager

StockSharp.Xaml.Diagram.GXDiagram

Diese Klasse ist für die automatische Positionierung aller Knoten im Diagramm verantwortlich.

Erbt von: FrameworkElement

Konstruktoren

LayoutManager
public LayoutManager()
layoutManager = LayoutManager()

Der Konstruktor für den Standard-Layout-Manager, der der Anfangswert von LayoutManager ist.

Eigenschaften

Animated
public bool Animated { get; set; }
value = layoutManager.Animated
layoutManager.Animated = value

Bestimmt oder legt fest, ob eine animierte Bewegung die Knoten von ihren aktuellen Positionen in ihre festgelegten Positionen verschieben soll.

AnimationDisablesDiagram
public bool AnimationDisablesDiagram { get; set; }
value = layoutManager.AnimationDisablesDiagram
layoutManager.AnimationDisablesDiagram = value

Gibt oder legt fest, ob das Diagramm während einer Layout-Animation deaktiviert ist.

AnimationTime
public int AnimationTime { get; set; }
value = layoutManager.AnimationTime
layoutManager.AnimationTime = value

Bestimmt oder stellt die Zeit in Millisekunden ein, die eine Animation benötigen sollte.

DefaultLocation
public Point DefaultLocation { get; set; }
value = layoutManager.DefaultLocation
layoutManager.DefaultLocation = value

Bestimmt oder legt den Ort fest, von dem aus nicht positionierte Knoten am Anfang der Animation erscheinen.

Diagram
public Diagram Diagram { get; internal set; }
value = layoutManager.Diagram
layoutManager.Diagram = value

Erhaltet das Diagramm, für das dieses LayoutManager automatische Layouts ausführt.

Initial
public LayoutInitial Initial { get; set; }
value = layoutManager.Initial
layoutManager.Initial = value

Bekommt oder legt fest, unter welchen Bedingungen eine "Initialisierung" oder "Reset" des Modells dazu führen soll, dass Layouts ungültig gemacht werden.

SkipsInvalidate
public bool SkipsInvalidate { get; set; }
value = layoutManager.SkipsInvalidate
layoutManager.SkipsInvalidate = value

Bestimmt oder legt fest, ob LayoutChange nichts tun soll, wenn ein Teil hinzugefügt / entfernt / geändert wird.

Methoden

CanLayoutPart
public virtual bool CanLayoutPart(Part p, IDiagramLayout lay)
result = layoutManager.CanLayoutPart(p, lay)

Dieses Prädikat entscheidet darüber, ob ein Teil am Layout eines IDiagramLayout teilnehmen soll.

p
Ein Knoten oder Link
lay
das Layout, das für die Positionierung des Teils verantwortlich sein könnte

Rückgabe: Wahr, wenn das Teil sichtbar ist und wenn das Teil LayoutId nicht "None" ist und entweder "All" oder der gleiche Wert wie die ID des Layouts ist. False für alle Verzierungen und für alle Knoten, die IsLinkLabel sind, und für alle Gruppen, die kein Layout haben.

InvalidateLayout
public virtual void InvalidateLayout(Part p, LayoutChange change)
layoutManager.InvalidateLayout(p, change)

Erklären Sie, dass das IDiagramLayout, das ein bestimmtes Teil enthält, jetzt ungültig ist und möglicherweise bald erneut durchgeführt werden muss.

p
muss ein Teil sein
change
ein Hinweis auf den Grund für die Notwendigkeit eines neuen Layouts; Dies wird verwendet, um zu entscheiden, ob ein Layout wirklich benötigt wird.
LayoutDiagram
public virtual void LayoutDiagram(LayoutInitial init, bool immediate)
layoutManager.LayoutDiagram(init, immediate)

Fordern Sie ein Relayout aller ungültigen Layouts in diesem Diagramm an.

init
Wenn der Wert InvalidateAll ist, werden alle IDiagramLayouts für ungültig erklärt und alle werden zu dem durch das Argument angegebenen Zeitpunkt ausgeführt. Wenn der Wert InvalidateIfNodesUnlocated ist, wird IDiagramLayouts nur dann für ungültig erklärt, wenn sie für Nodes verantwortlich sind, die keinen Standort haben, weil ihre X- und/oder Y-Werte Double.NaN sind. Wenn der Wert ValidateAll ist, werden alle IDiagramLayouts für gültig erklärt und es wird kein Layout angezeigt, bis etwas anderes passiert, das ein Layout ungültig macht. Wenn der Wert Keine ist, wird keine Layout-Gültigkeit geändert - alle ungültigen Layouts werden zum angegebenen Zeitpunkt ausgeführt.
immediate
Wenn dies zutrifft, führt diese Methode ein sofortiges Layout aus, wenn dies nicht stimmt, plant diese Methode ein baldiges Layout.
LayoutDiagram
public void LayoutDiagram()
layoutManager.LayoutDiagram()

Fordern Sie eine Neulayout aller Knoten und Links in diesem Diagramm.

MoveAnimated
public void MoveAnimated(Node node, Point newpos)
layoutManager.MoveAnimated(node, newpos)

Dies setzt im Grunde nur den Wert von Position, aber mit animierter Bewegung.

node
newpos
eine neue Position in Modellkoordinaten
PerformLayout
protected virtual void PerformLayout()
layoutManager.PerformLayout()

Diese Methode wird asynchron aufgerufen, um ein Diagramm zu entwerfen.

Felder

AnimatedProperty
public static readonly DependencyProperty AnimatedProperty
value = LayoutManager.AnimatedProperty

Bestimmt die Animated Dependency-Eigenschaft.

AnimationDisablesDiagramProperty
public static readonly DependencyProperty AnimationDisablesDiagramProperty
value = LayoutManager.AnimationDisablesDiagramProperty

Identifiziert die Abhängigkeitseigenschaft AnimationDisablesDiagram.

AnimationTimeProperty
public static readonly DependencyProperty AnimationTimeProperty
value = LayoutManager.AnimationTimeProperty

Identifiziert die Abhängigkeitseigenschaft AnimationTime.

DefaultLocationProperty
public static readonly DependencyProperty DefaultLocationProperty
value = LayoutManager.DefaultLocationProperty

Identifiziert die Abhängigkeitseigenschaft DefaultLocation.

InitialProperty
public static readonly DependencyProperty InitialProperty
value = LayoutManager.InitialProperty

Bestimmt die Eigenschaft Initial Dependency.