DragZoomingTool

StockSharp.Xaml.Diagram.GXDiagram.Tool

Der DragZoomingTool ermöglicht es dem Benutzer, in ein Diagramm zu zoomen, indem er ein Feld streckt, um den neuen Inhalt des Diagramms anzuzeigen Viewport (der Bereich des Modells, der durch den DiagramPanel angezeigt wird).

Erbt von: DiagramTool

Eigenschaften

Box
protected Node Box { get; set; }
value = dragZoomingTool.Box
dragZoomingTool.Box = value

Bekommt oder setzt den temporären Knoten als "Gummiband" -Box, die der Benutzer mit einem Maus-Drag dehnt.

BoxTemplate
public DataTemplate BoxTemplate { get; set; }
value = dragZoomingTool.BoxTemplate
dragZoomingTool.BoxTemplate = value

Erhält oder setzt die DataTemplate, die das Feld "Gummiband" darstellt, das der Benutzer zeichnet, um den Zoombereich anzugeben.

ZoomedDiagram
public Diagram ZoomedDiagram { get; set; }
value = dragZoomingTool.ZoomedDiagram
dragZoomingTool.ZoomedDiagram = value

Bekommt oder legt das Diagramm, das skaliert und gescrollt werden wird, entsprechend dem Wert von ComputeBoxBounds von Rect.

Methoden

CanStart
public override bool CanStart()
result = dragZoomingTool.CanStart()

Dieses Tool kann laufen, wenn es einen Maus-Drag gab, weit genug weg, um kein Klick zu sein.

ComputeBoxBounds
protected virtual Rect ComputeBoxBounds()
result = dragZoomingTool.ComputeBoxBounds()

Dies gibt nur eine Rect-Streckung vom Maus-Down-Punkt zu einem Punkt zurück, der vom aktuellen Mauspunkt und dem Seitenverhältnis des ZoomedDiagram geleitet wird.

CreateBox
protected virtual Node CreateBox()
result = dragZoomingTool.CreateBox()

Erstellen Sie einen Knoten mit BoxTemplate als DataTemplate.

Rückgabe: Ein Knoten, der nicht an Daten gebunden ist

DoActivate
public override void DoActivate()
dragZoomingTool.DoActivate()

Rufen Sie CreateBox an, um das Feld "Gummiband" zu erstellen, erinnern Sie sich an die Box-Eigenschaft und fügen Sie es der PartsModel des Diagramms hinzu.

DoDeactivate
public override void DoDeactivate()
dragZoomingTool.DoDeactivate()

Säubern Sie jede Box.

DoMouseMove
public override void DoMouseMove()
dragZoomingTool.DoMouseMove()

Während Sie die Maus ziehen, positionieren und größen Sie die Box entsprechend den Grenzen, die von ComputeBoxBounds erzeugt werden.

DoMouseUp
public override void DoMouseUp()
dragZoomingTool.DoMouseUp()

Rufen Sie beim Maus-Up Rect mit dem Wert ComputeBoxBounds auf und stoppen Sie dieses Tool.

DoStart
public override void DoStart()
dragZoomingTool.DoStart()

Erfassen Sie die Maus beim Starten dieses Tools.

DoStop
public override void DoStop()
dragZoomingTool.DoStop()

Lassen Sie die Maus-Erfassung frei, wenn Sie dieses Tool stoppen.

ZoomToRect
public virtual void ZoomToRect(Rect brect)
dragZoomingTool.ZoomToRect(brect)

Diese Methode wird aufgerufen, um das ZoomedDiagram zu zoomen, um das angegebene Rechteck zu entsprechen.

brect
ein Rechteck in Modellkoordinaten

Felder

BoxTemplateProperty
public static readonly DependencyProperty BoxTemplateProperty
value = DragZoomingTool.BoxTemplateProperty

Identifiziert die Abhängigkeitseigenschaft BoxTemplate.

ZoomedDiagramProperty
public static readonly DependencyProperty ZoomedDiagramProperty
value = DragZoomingTool.ZoomedDiagramProperty

Identifiziert die Abhängigkeitseigenschaft ZoomedDiagram.