DiagramPanel

StockSharp.Xaml.Diagram.GXDiagram

Die DiagramPanel ist die zentrale Klasse eines Diagramms, die alle Teileebenen enthält, die für die Übersetzung (Scrollen) und Skalierung (Zooming) und Ausrichtung verantwortlich sind, die Grenzen des Diagramms im Auge behalten und verschiedene Treffertestmethoden haben, die verwendet werden, um das Diagramm nach bestimmten Elementen zu durchsuchen.

Erbt von: Panel

Implementiert: IScrollInfo

Konstruktoren

DiagramPanel
public DiagramPanel()
diagramPanel = DiagramPanel()

Bauen Sie eine leere DiagramPanel.

Eigenschaften

AdornmentLayer
public NodeLayer AdornmentLayer { get; }
value = diagramPanel.AdornmentLayer

Bekommt die Standardschicht, die zum Halten von Verzierungen verwendet wird, die normalerweise vor allen anderen Schichten liegt.

AutoScrollDelay
public int AutoScrollDelay { get; set; }
value = diagramPanel.AutoScrollDelay
diagramPanel.AutoScrollDelay = value

Bekommt oder legt fest, wie lange vor dem Autoscrolling gewartet werden soll.

AutoScrollRegion
public Thickness AutoScrollRegion { get; set; }
value = diagramPanel.AutoScrollRegion
diagramPanel.AutoScrollRegion = value

Bekommt oder setzt den Rand im Panel, wo ein Maus-Drag automatisch dazu führt, dass die Ansicht scrollt.

AutoScrollTime
public int AutoScrollTime { get; set; }
value = diagramPanel.AutoScrollTime
diagramPanel.AutoScrollTime = value

Bestimmt oder legt fest, wie schnell die Position geändert werden soll, wenn sich die Maus im AutoScrollRegion befindet.

CanHorizontallyScroll
public bool CanHorizontallyScroll { get; set; }
value = diagramPanel.CanHorizontallyScroll
diagramPanel.CanHorizontallyScroll = value

Gibt oder stellt fest, ob der Benutzer horizontal scrollen kann. (Implements IScrollInfo @ .)

CanVerticallyScroll
public bool CanVerticallyScroll { get; set; }
value = diagramPanel.CanVerticallyScroll
diagramPanel.CanVerticallyScroll = value

Gibt oder stellt fest, ob der Benutzer vertikal scrollen kann. (Implements IScrollInfo @ .)

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

Erhaltet das Diagramm, in dem sich dieses Panel befindet.

DiagramBounds
public Rect DiagramBounds { get; set; }
value = diagramPanel.DiagramBounds
diagramPanel.DiagramBounds = value

Bekommt oder setzt die Modell-Koordinaten-Grenzen des Diagramms.

ExtentHeight
public double ExtentHeight { get; }
value = diagramPanel.ExtentHeight

Holen Sie sich die vertikale Größe des scrollbaren Teils dieses Diagramms in Steuereinheiten (geräteunabhängiges Pixel). (Implements IScrollInfo @ .)

ExtentWidth
public double ExtentWidth { get; }
value = diagramPanel.ExtentWidth

Holen Sie sich die horizontale Größe des scrollbaren Teils dieses Diagramms in Steuereinheiten (geräteunabhängige Pixel). (Implements IScrollInfo.)

FixedBounds
public Rect FixedBounds { get; set; }
value = diagramPanel.FixedBounds
diagramPanel.FixedBounds = value

Bekommt oder setzt ein festes Begrenzungsrechteck, das von ComputeDiagramBounds zurückgegeben wird.

HorizontalContentAlignment
public HorizontalAlignment HorizontalContentAlignment { get; set; }
value = diagramPanel.HorizontalContentAlignment
diagramPanel.HorizontalContentAlignment = value

Bestimmt oder legt fest, wie die Teile im Panel positioniert sind, wenn die Breite DiagramBounds kleiner ist als die ViewportWidth.

HorizontalOffset
public double HorizontalOffset { get; }
value = diagramPanel.HorizontalOffset

Bekommt den horizontalen Versatz der Teile des Diagramms. (Implements IScrollInfo @.)

MaximumScale
public double MaximumScale { get; set; }
value = diagramPanel.MaximumScale
diagramPanel.MaximumScale = value

Bekommt oder setzt den größten Wert, den Scale annehmen kann.

MinimumScale
public double MinimumScale { get; set; }
value = diagramPanel.MinimumScale
diagramPanel.MinimumScale = value

Erhält oder setzt den kleinsten Wert größer als Null, den Scale annehmen kann.

Padding
public Thickness Padding { get; set; }
value = diagramPanel.Padding
diagramPanel.Padding = value

Bekommt oder legt die Menge an zusätzlichem "leeren" Speicherplatz um den DiagramBounds vor.

Position
public Point Position { get; set; }
value = diagramPanel.Position
diagramPanel.Position = value

Bekommt oder setzt den Punkt in Modellkoordinaten, der in der oberen linken Ecke dieses Panels angezeigt wird.

Scale
public double Scale { get; set; }
value = diagramPanel.Scale
diagramPanel.Scale = value

Bekommt oder legt den Skalierungsfaktor fest, bei dem alles gerendert wird.

ScrollHorizontalLineChange
public double ScrollHorizontalLineChange { get; set; }
value = diagramPanel.ScrollHorizontalLineChange
diagramPanel.ScrollHorizontalLineChange = value

Bekommt oder legt die Größe einer "Linie" beim horizontalen Scrollen fest.

ScrollOwner
public ScrollViewer ScrollOwner { get; set; }
value = diagramPanel.ScrollOwner
diagramPanel.ScrollOwner = value

Bekommt oder setzt das ScrollViewer, mit dem der Benutzer dieses Panel scrollen kann. (Implementierungen IScrollInfo.)

ScrollVerticalLineChange
public double ScrollVerticalLineChange { get; set; }
value = diagramPanel.ScrollVerticalLineChange
diagramPanel.ScrollVerticalLineChange = value

Bekommt oder stellt die Größe einer "Linie" beim vertikalen Scrollen ein.

Stretch
public StretchPolicy Stretch { get; set; }
value = diagramPanel.Stretch
diagramPanel.Stretch = value

Gibt oder legt fest, wie die Eigenschaft Scale des Panels festgelegt ist, abhängig von der Größe des DiagramBounds.

VerticalContentAlignment
public VerticalAlignment VerticalContentAlignment { get; set; }
value = diagramPanel.VerticalContentAlignment
diagramPanel.VerticalContentAlignment = value

Bestimmt oder legt fest, wie die Teile im Panel positioniert sind, wenn die Breite DiagramBounds kleiner ist als die ViewportWidth.

VerticalOffset
public double VerticalOffset { get; }
value = diagramPanel.VerticalOffset

Erhält den vertikalen Versatz der Teile des Diagramms. (Implements IScrollInfo @.)

ViewportBounds
public Rect ViewportBounds { get; }
value = diagramPanel.ViewportBounds

Erhält den sichtbaren Teil dieses Panels in Modellkoordinaten.

ViewportHeight
public double ViewportHeight { get; }
value = diagramPanel.ViewportHeight

Holen Sie sich die vertikale Größe des sichtbaren Teils dieses Panels unter Kontrolle (geräteunabhängiges Pixel) Einheiten. (Implements IScrollInfo @).

ViewportWidth
public double ViewportWidth { get; }
value = diagramPanel.ViewportWidth

Holen Sie sich die horizontale Größe des sichtbaren Teils dieses Panels in Steuergeräten (geräteunabhängige Pixel) Einheiten. (Implements IScrollInfo.)

ZoomPoint
public Point ZoomPoint { get; set; }
value = diagramPanel.ZoomPoint
diagramPanel.ZoomPoint = value

Bekommt oder setzt den scheinbaren Fokuspunkt, der beim Ein- oder Auszoomen verwendet wird.

ZoomTime
public int ZoomTime { get; set; }
value = diagramPanel.ZoomTime
diagramPanel.ZoomTime = value

Gibt oder legt fest, wie schnell die Eigenschaften Skalierung und/oder Position geändert werden sollen, wenn Änderungen an DiagramBounds oder Änderungen der Panelgröße vorgenommen werden, die eine Neuausrichtung des Inhalts verursachen, oder in Aufrufen von Rect oder Action.

Methoden

ArrangeOverride
protected override Size ArrangeOverride(Size finalSize)
result = diagramPanel.ArrangeOverride(finalSize)

Ordnen Sie jede der Schichten in diesem Panel an.

finalSize
CenterPart
public void CenterPart(Part part)
diagramPanel.CenterPart(part)

Zentrieren Sie die Grenzen eines Teils innerhalb dieses Viewports.

part
CenterPart
public void CenterPart(Part part, Action afterwards)
diagramPanel.CenterPart(part, afterwards)

Zentrieren Sie die Grenzen eines Teils innerhalb dieses Viewports.

part
afterwards
eine Aktion, die nach Abschluss der Animation ausgeführt werden soll; kann null sein
CenterRect
public void CenterRect(Rect bounds, Action afterwards)
diagramPanel.CenterRect(bounds, afterwards)

Zentrieren Sie einen bestimmten Bereich des Diagramms in diesem Viewport.

bounds
a Rect in Modellkoordinaten
afterwards
eine Aktion, die nach Abschluss der Animation ausgeführt werden soll; kann null sein
ComputeAutoScrollPosition
protected virtual Point ComputeAutoScrollPosition(Point viewPnt)
result = diagramPanel.ComputeAutoScrollPosition(viewPnt)

Diese Methode wird aufgerufen, um die nächste Position im Dokument für diese Ansicht zu bestimmen, wenn der Benutzer die Maus zieht.

viewPnt
Der Mauspunkt in den Kontrollkoordinaten.
ComputeBounds
public virtual Rect ComputeBounds(IEnumerable<Part> parts)
result = diagramPanel.ComputeBounds(parts)

Berechnen Sie das Begrenzungsrechteck, das eine bestimmte Sammlung von Teilen umgibt.

parts

Rückgabe: die Vereinigung der Bounds aller Teile in , oder Rect.Empty, wenn es keine Teile gibt

ComputeDiagramBounds
protected virtual Rect ComputeDiagramBounds()
result = diagramPanel.ComputeDiagramBounds()

Dies wird von UpdateDiagramBounds aufgerufen, um einen neuen Wert für DiagramBounds zu bestimmen.

Rückgabe: a Rect in Modellkoordinaten

CreateBackgroundGridPattern
protected virtual GridPattern CreateBackgroundGridPattern()
result = diagramPanel.CreateBackgroundGridPattern()

Erstellen Sie GridPattern für das gesamte Diagramm mit der Datenvorlage GridPatternTemplate.

Rückgabe: Der ungebundene Knoten, der GridPattern hält

DoAutoScroll
public void DoAutoScroll(Point modelPnt)
diagramPanel.DoAutoScroll(modelPnt)

Starten oder Weiterfahren der Ansicht automatisch während eines Maus-Drags.

modelPnt
der aktuelle Mauspunkt in Modellkoordinaten
DoMakeVisible
protected virtual Rect DoMakeVisible(UIElement elt, Rect rectangle)
result = diagramPanel.DoMakeVisible(elt, rectangle)

Diese übersteuerbare Methode verändert die Position, so dass das gegebene Element im Viewport sichtbar wird.

elt
ein UIElement, das sich im visuellen Baum dieses Panels befindet
rectangle
Die Region des Elements, die in Sicht gebracht werden soll; wenn diese leer ist, wird dies standardmäßig auf die Bounds des Elements des übergeordneten Teils eingestellt.
FindElementAt``1
public T FindElementAt<T>(Point p, Func<Visual, T> navig, Predicate<T> pred, SearchLayers layers)
result = diagramPanel.FindElementAt(p, navig, pred, layers)

Suchen Sie alle Teile, die an einem bestimmten Punkt sind, die ein bestimmtes Prädikat erfüllen, und geben Sie das erste Element zurück, das übereinstimmt.

p
a Punkt in den Modellkoordinaten
navig
Dies ist eine Funktion, die an einem bestimmten Punkt ein Element erhält und ein Element vom Typ zurückgibt, das vom Prädikat berücksichtigt werden soll.
pred
Dies ist ein Prädikat, das ein Element vom Typ gegeben wird ; Wenn das Prädikat true zurückgibt, gibt diese Methode dieses Element zurück; wenn es false zurückgibt, wird die Suche nach Elementen an der angegebenen Stelle fortgesetzt. Wenn dieses Prädikatargument null ist, wird keine Filterung von Elementen durchgeführt - das erste gefundene Element wird zurückgegeben.
layers
Die Arten von Layers, in denen gesucht werden soll. Wenn Sie beispielsweise nach einem Knoten suchen, wird die Suche mit dem Wert Nodes beschleunigt, indem Sie Layers ignorieren, die Links enthalten.

Rückgabe: ein Element vom Typ , oder null, wenn keine gefunden wird

FindElementsAt``1
public IEnumerable<T> FindElementsAt<T>(Point p, Func<Visual, T> navig, Predicate<T> pred, SearchLayers layers)
result = diagramPanel.FindElementsAt(p, navig, pred, layers)

Suchen Sie alle Teile, die sich an einem bestimmten Punkt befinden, die einem bestimmten Prädikat entsprechen, und geben Sie eine Sammlung von Elementen zurück, die übereinstimmen.

p
a Punkt in den Modellkoordinaten
navig
Dies ist eine Funktion, die an einem bestimmten Punkt ein Element erhält und ein Element vom Typ zurückgibt, das vom Prädikat berücksichtigt werden soll.
pred
Dies ist ein Prädikat, das ein Element vom Typ gegeben wird ; wenn das Prädikat true zurückgibt, beinhaltet diese Methode dieses Element in seinen Ergebnissen.
layers
Die Arten von Layers, in denen gesucht werden soll. Wenn Sie beispielsweise nach Nodes suchen, wird die Suche mit dem Wert Nodes beschleunigt, indem Sie Layers ignorieren, die Links enthalten.

Rückgabe: eine vielleicht leere Sammlung von Elementen des Typs

FindElementsIn``1
public IEnumerable<T> FindElementsIn<T>(Rect rect, Func<Visual, T> navig, Predicate<T> pred, SearchLayers layers)
result = diagramPanel.FindElementsIn(rect, navig, pred, layers)

Finden Sie Elemente, die sich innerhalb eines Rechtecks befinden.

rect
a Rect in Modellkoordinaten
navig
Dies ist eine Funktion, die an einem bestimmten Punkt ein Element erhält und ein Element vom Typ zurückgibt, das vom Prädikat berücksichtigt werden soll.
pred
Dies ist ein Prädikat, das ein Element des Typs gegeben wird; wenn das Prädikat true zurückgibt, enthält diese Methode dieses Element in seinen Ergebnissen.
layers
Die Arten von Layers, in denen gesucht werden soll. Wenn Sie beispielsweise nach Nodes suchen, wird die Suche mit dem Wert Nodes beschleunigt, indem Sie Layers ignorieren, die Links enthalten.

Rückgabe: eine vielleicht leere Sammlung von Elementen des Typs

FindElementsNear``1
public IEnumerable<T> FindElementsNear<T>(Point p, double dist, Func<Visual, T> navig, Predicate<T> pred, SearchLayers layers)
result = diagramPanel.FindElementsNear(p, dist, navig, pred, layers)

Finden Sie Elemente, die sich in einem Abstand von einem Punkt befinden.

p
a Punkt in den Modellkoordinaten
dist
die Entfernung in Modellkoordinaten
navig
Dies ist eine Funktion, die an einem bestimmten Punkt ein Element erhält und ein Element vom Typ zurückgibt, das vom Prädikat berücksichtigt werden soll.
pred
Dies ist ein Prädikat, das ein Element des Typs gegeben wird; wenn das Prädikat true zurückgibt, enthält diese Methode dieses Element in seinen Ergebnissen.
layers
Die Arten von Layers, in denen gesucht werden soll. Wenn Sie beispielsweise nach Nodes suchen, wird die Suche mit dem Wert Nodes beschleunigt, indem Sie Layers ignorieren, die Links enthalten.

Rückgabe: ein Element vom Typ , oder null, wenn keine gefunden wird

FindElementsWithin``1
internal IEnumerable<T> FindElementsWithin<T>(Geometry geo, Func<Visual, T> navig, Predicate<T> pred, SearchLayers layers)
result = diagramPanel.FindElementsWithin(geo, navig, pred, layers)

Suchen Sie alle Teile, die sich innerhalb einer gegebenen Geometrie befinden, die einem gegebenen Prädikat entsprechen, und geben Sie eine Sammlung von Elementen zurück, die übereinstimmen.

geo
a Geometrie in Modellkoordinaten
navig
Dies ist eine Funktion, die an einem bestimmten Punkt ein Element erhält und ein Element vom Typ zurückgibt, das vom Prädikat berücksichtigt werden soll.
pred
Dies ist ein Prädikat, das ein Element des Typs gegeben wird; wenn das Prädikat true zurückgibt, enthält diese Methode dieses Element in seinen Ergebnissen.
layers
Die Arten von Layers, in denen gesucht werden soll. Wenn Sie beispielsweise nach Nodes suchen, wird die Suche mit dem Wert Nodes beschleunigt, indem Sie Layers ignorieren, die Links enthalten.

Rückgabe: eine vielleicht leere Sammlung von Elementen des Typs

FindLayer``1
public T FindLayer<T>(string name)
result = diagramPanel.FindLayer(name)

Finden Sie eine Schicht des angegebenen Typs mit genau der gleichen ID wie die gegebene .

name
FindPartAt``1
public T FindPartAt<T>(Point p, Predicate<T> pred, SearchLayers layers)
result = diagramPanel.FindPartAt(p, pred, layers)

Geben Sie den vordersten Teil zurück, der sich an einem bestimmten Punkt befindet.

p
a Punkt in den Modellkoordinaten
pred
Dies ist ein Prädikat, das einen Teil vom Typ erhält; wenn das Prädikat true zurückgibt, gibt diese Methode diesen Teil zurück.
layers
Die Arten von Layers, in denen gesucht werden soll. Wenn Sie beispielsweise nach Nodes suchen, wird die Suche mit dem Wert Nodes beschleunigt, indem Sie Layers ignorieren, die Links enthalten.

Rückgabe: null, wenn kein solcher Teil gefunden wird

FindPartsAt``1
public IEnumerable<T> FindPartsAt<T>(Point p, SearchLayers layers)
result = diagramPanel.FindPartsAt(p, layers)

Geben Sie alle Teile zurück, die sich an einem bestimmten Punkt befinden.

p
a Punkt in den Modellkoordinaten
layers
Die Arten von Layers, in denen gesucht werden soll. Wenn Sie beispielsweise nach Nodes suchen, wird die Suche mit dem Wert Nodes beschleunigt, indem Sie Layers ignorieren, die Links enthalten.

Rückgabe: Alle Teile des angegebenen Typs, die sich am Punkt befinden und die sich in den durch . angegebenen Schichten befinden, geben eine leere Liste zurück, wenn keine qualifizierenden Teile gefunden werden.

FindPartsIn``1
public IEnumerable<T> FindPartsIn<T>(Rect rect, SearchFlags srch, SearchInclusion overlap, SearchLayers layers)
result = diagramPanel.FindPartsIn(rect, srch, overlap, layers)

Finden Sie Teile, die sich innerhalb eines Rechtecks befinden.

rect
a Rect in Modellkoordinaten
srch
Welche Arten von Teilen enthalten; ein typischer Wert könnte SelectableParts sein.
overlap
Die erforderliche geometrische Beziehung zum Teil; der typische Wert ist Inside.
layers
Die Arten von Layers, in denen gesucht werden soll. Wenn Sie beispielsweise nach Nodes suchen, wird die Suche mit dem Wert Nodes beschleunigt, indem Sie Layers ignorieren, die Links enthalten.
FindPartsNear``1
public IEnumerable<T> FindPartsNear<T>(Point p, double dist, SearchFlags srch, SearchInclusion overlap, SearchLayers layers)
result = diagramPanel.FindPartsNear(p, dist, srch, overlap, layers)

Finde Teile, die nahe an einem Punkt sind.

p
a Punkt in den Modellkoordinaten
dist
die Entfernung in Modellkoordinaten
srch
Welche Arten von Teilen enthalten; ein typischer Wert könnte SelectableParts sein.
overlap
Die erforderliche geometrische Beziehung zum Teil; der typische Wert ist Inside.
layers
Die Arten von Layers, in denen gesucht werden soll. Wenn Sie beispielsweise nach Nodes suchen, wird die Suche mit dem Wert Nodes beschleunigt, indem Sie Layers ignorieren, die Links enthalten.
FindPartsWithin``1
internal IEnumerable<T> FindPartsWithin<T>(Geometry geo, SearchFlags srch, SearchInclusion overlap, SearchLayers layers)
result = diagramPanel.FindPartsWithin(geo, srch, overlap, layers)

Suchen Sie alle Teile, die sich innerhalb einer bestimmten Geometrie befinden, die bestimmte Kriterien erfüllen, und geben Sie eine Sammlung von Teilen zurück, die übereinstimmen.

geo
a Geometrie in Modellkoordinaten
srch
Welche Arten von Teilen enthalten; ein typischer Wert könnte SelectableParts sein.
overlap
Die erforderliche geometrische Beziehung zur Geometrie; der typische Wert ist Inside.
layers
Die Arten von Layers, in denen gesucht werden soll. Wenn Sie beispielsweise nach Nodes suchen, wird die Suche mit dem Wert Nodes beschleunigt, indem Sie Layers ignorieren, die Links enthalten.

Rückgabe: eine vielleicht leere Sammlung von Elementen des Typs

GetLayer``1
public T GetLayer<T>(string name)
result = diagramPanel.GetLayer(name)

Suchen Sie eine Schicht des angegebenen Typs mit genau der gleichen ID wie die angegebene oder geben Sie eine Standardschicht des angegebenen Typs zurück.

name
InitializeLayers
protected virtual void InitializeLayers()
diagramPanel.InitializeLayers()

Wenn in der Kindersammlung dieses Panels keine Layers vorhanden sind, erstellen Sie den Standardsatz von Layers.

IsDoubleClick
public static bool IsDoubleClick(MouseButtonEventArgs e)
result = DiagramPanel.IsDoubleClick(e)

Dieses Prädikat gilt, wenn das Maustastenereignis einen Doppelklick darstellt.

e
IsUnoccupied
internal bool IsUnoccupied(Rect r, Predicate<Part> skip)
result = diagramPanel.IsUnoccupied(r, skip)

Gibt true zurück, wenn sich Knoten innerhalb oder im Schnitt des angegebenen rechteckigen Bereichs befinden.

r
a Rect in Modellkoordinaten
skip
ein Prädikat, das für Knoten, die bei der Überprüfung auf Kollisionen ignoriert werden, gültig sein sollte, normalerweise der Knoten im Dokument, den Sie verschieben möchten; kann null sein, um alle nicht-temporären Knoten zu berücksichtigen
LineDown
public void LineDown()
diagramPanel.LineDown()

Erhöht die VerticalOffset von ScrollVerticalLineChange. (Installationen IScrollInfo @)

LineLeft
public void LineLeft()
diagramPanel.LineLeft()

Verringert die HorizontalOffset von ScrollHorizontalLineChange. (Installationen IScrollInfo @)

LineRight
public void LineRight()
diagramPanel.LineRight()

Erhöht die HorizontalOffset von ScrollHorizontalLineChange. (Installationen IScrollInfo @)

LineUp
public void LineUp()
diagramPanel.LineUp()

Verringert die VerticalOffset von ScrollVerticalLineChange. (Installationen IScrollInfo @)

MakeBitmap
public BitmapSource MakeBitmap(Size bmpsize, double dpi, Point viewpos, double scale)
result = diagramPanel.MakeBitmap(bmpsize, dpi, viewpos, scale)

Geben Sie eine Bitmap zurück, die die Teile in einem bestimmten Bereich zeigt, die in einem bestimmten Maßstab gezeichnet sind.

bmpsize
die Größe der resultierenden Bitmap
dpi
Bitmap-Auflösung
viewpos
a Punkt in den Modellkoordinaten
scale
Ein Wert von 1,0 ist normal; der Wert muss eine positive Zahl sein.

Rückgabe: a BitmapSource

MakeBitmap
public BitmapSource MakeBitmap()
result = diagramPanel.MakeBitmap()

Generiert eine Bitmap, die die Teile anzeigt, die derzeit im Diagramm sichtbar sind.

Rückgabe: a BitmapSource

MakeBitmap
public BitmapSource MakeBitmap(Size bmpsize, double dpi, Point viewpos, double scale, Action<BitmapSource> act)
result = diagramPanel.MakeBitmap(bmpsize, dpi, viewpos, scale, act)

Geben Sie eine Bitmap zurück, die die Teile in einem bestimmten Bereich zeigt, die in einem bestimmten Maßstab gezeichnet sind.

bmpsize
die Größe der resultierenden Bitmap, auf die nächste ganze Zahl aufgerundet
dpi
Bitmap-Auflösung
viewpos
a Punkt in Modellkoordinaten für die obere linke Ecke des Bereichs, der gerendert werden soll
scale
Ein Wert von 1,0 ist normal; der Wert muss eine positive Zahl sein.
act
eine Aktion, bei der BitmapSource später ausgeführt wird; dies kann null sein

Rückgabe: a BitmapSource

MakeVisible
public Rect MakeVisible(Visual visual, Rect rectangle)
result = diagramPanel.MakeVisible(visual, rectangle)

Scrollen Sie das Diagramm so, dass sich ein bestimmtes Element () im Viewport befindet. (Implements IScrollInfo.)

visual
rectangle
Dieser Wert ist normalerweise Rect.Empty, was bedeutet, dass so viel des gesamten visuellen Elements in den Viewport passt.

Rückgabe: das Ergebnis des Aufrufs von Rect

MeasureOverride
protected override Size MeasureOverride(Size availableSize)
result = diagramPanel.MeasureOverride(availableSize)

Messen Sie jede der Schichten in diesem Panel.

availableSize
MouseWheelDown
public void MouseWheelDown()
diagramPanel.MouseWheelDown()

Erhöht die VerticalOffset um ScrollVerticalLineChange die Anzahl der Zeilen, die für die Mausraddrehung gescrollt werden sollen. (Implementierungen IScrollInfo @ .)

MouseWheelLeft
public void MouseWheelLeft()
diagramPanel.MouseWheelLeft()

Verringert das HorizontalOffset um das ScrollHorizontalLineChange mal die Anzahl der Zeilen, die für die Drehung des Mausrades gescrollt werden sollen. (Implementierungen IScrollInfo @ .)

MouseWheelRight
public void MouseWheelRight()
diagramPanel.MouseWheelRight()

Erhöht die HorizontalOffset um ScrollHorizontalLineChange die Anzahl der Zeilen, die für die Mausraddrehung gescrollt werden sollen. (Implementierungen IScrollInfo @ .)

MouseWheelUp
public void MouseWheelUp()
diagramPanel.MouseWheelUp()

Verringert das VerticalOffset um das ScrollVerticalLineChange mal die Anzahl der Zeilen, die für die Drehung des Mausrades gescrollt werden sollen. (Implementierungen IScrollInfo @ .)

OnBoundsAlignmentChanged
protected virtual void OnBoundsAlignmentChanged()
diagramPanel.OnBoundsAlignmentChanged()

Diese überschreibbare Methode wird aufgerufen, wenn sich die Eigenschaften DiagramBounds oder HorizontalContentAlignment oder VerticalContentAlignment oder Stretch ändern.

OnDiagramBoundsChanged
protected virtual void OnDiagramBoundsChanged(RoutedPropertyChangedEventArgs<Rect> e)
diagramPanel.OnDiagramBoundsChanged(e)

Heben Sie die DiagramBoundsChanged Veranstaltung.

e
OnDragEnter
protected override void OnDragEnter(DragEventArgs e)
diagramPanel.OnDragEnter(e)

Behandeln Sie ein DragEnter @ Ereignis.

e
OnDragLeave
protected override void OnDragLeave(DragEventArgs e)
diagramPanel.OnDragLeave(e)

Behandeln Sie ein DragLeave @ Ereignis.

e
OnDragOver
protected override void OnDragOver(DragEventArgs e)
diagramPanel.OnDragOver(e)

Behandeln Sie ein DragOver @ Ereignis.

e
OnDrop
protected override void OnDrop(DragEventArgs e)
diagramPanel.OnDrop(e)

Behandeln Sie ein Drop-Event.

e
OnGiveFeedback
protected override void OnGiveFeedback(GiveFeedbackEventArgs e)
diagramPanel.OnGiveFeedback(e)

Behandeln Sie ein GiveFeedback @ Ereignis.

e
OnInitialLayoutCompleted
protected virtual void OnInitialLayoutCompleted()
diagramPanel.OnInitialLayoutCompleted()

Diese überschreibbare Methode wird aufgerufen, nachdem das erste Layout ausgeführt wurde und die DiagramBounds berechnet wurde.

OnLayoutCompleted
protected virtual void OnLayoutCompleted()
diagramPanel.OnLayoutCompleted()

Diese überschreibbare Methode wird aufgerufen, nachdem jedes Layout ausgeführt wurde und die DiagramBounds berechnet wurde.

OnLostMouseCapture
protected override void OnLostMouseCapture(MouseEventArgs e)
diagramPanel.OnLostMouseCapture(e)

Behandeln Sie das Ereignis, wenn die Maus-Erfassung verloren geht.

e
OnMouseDown
protected override void OnMouseDown(MouseButtonEventArgs e)
diagramPanel.OnMouseDown(e)

Behandeln Sie ein Maus-Down-Event.

e
OnMouseEnter
protected override void OnMouseEnter(MouseEventArgs e)
diagramPanel.OnMouseEnter(e)

Behandeln Sie ein Maus-Enter-Event.

e
OnMouseMove
protected override void OnMouseMove(MouseEventArgs e)
diagramPanel.OnMouseMove(e)

Behandeln Sie ein Maus-Move-Event.

e
OnMouseUp
protected override void OnMouseUp(MouseButtonEventArgs e)
diagramPanel.OnMouseUp(e)

Behandeln Sie ein Mouse-Up-Event.

e
OnMouseWheel
protected override void OnMouseWheel(MouseWheelEventArgs e)
diagramPanel.OnMouseWheel(e)

Behandeln Sie ein Mausrad-Ereignis.

e
OnPositionChanged
protected virtual void OnPositionChanged(Point oldpos, Point newpos)
diagramPanel.OnPositionChanged(oldpos, newpos)

Diese überschreibbare Methode wird aufgerufen, wenn sich die Position ändert.

oldpos
a Punkt in den Modellkoordinaten
newpos
a Punkt in den Modellkoordinaten
OnQueryContinueDrag
protected override void OnQueryContinueDrag(QueryContinueDragEventArgs e)
diagramPanel.OnQueryContinueDrag(e)

Behandeln Sie ein QueryContinueDrag @ Ereignis.

e
OnScaleChanged
protected virtual void OnScaleChanged(double oldscale, double newscale)
diagramPanel.OnScaleChanged(oldscale, newscale)

Diese überschreibbare Methode wird aufgerufen, wenn sich die Skala ändert.

oldscale
Doppel
newscale
Doppel
OnSizeChanged
protected virtual void OnSizeChanged(Size oldsize, Size newsize)
diagramPanel.OnSizeChanged(oldsize, newsize)

Diese überschreibbare Methode wird aufgerufen, wenn sich die tatsächliche Größe des Panels ändert.

oldsize
a Größe in Elementkoordinaten
newsize
a Größe in Elementkoordinaten
OnViewportBoundsChanged
protected virtual void OnViewportBoundsChanged(RoutedPropertyChangedEventArgs<Rect> e)
diagramPanel.OnViewportBoundsChanged(e)

Heben Sie die ViewportBoundsChanged Veranstaltung.

e
OnVisualParentChanged
protected override void OnVisualParentChanged(DependencyObject oldParent)
diagramPanel.OnVisualParentChanged(oldParent)

Jedes DiagramPanel sollte im visuellen Baum eines Diagramms sein.

oldParent
PageDown
public void PageDown()
diagramPanel.PageDown()

Erhöht die VerticalOffset von ViewportHeight. (Installationen IScrollInfo @)

PageLeft
public void PageLeft()
diagramPanel.PageLeft()

Verringert die HorizontalOffset von ViewportWidth. (Installationen IScrollInfo @)

PageRight
public void PageRight()
diagramPanel.PageRight()

Erhöht die HorizontalOffset von ViewportWidth. (Installationen IScrollInfo @)

PageUp
public void PageUp()
diagramPanel.PageUp()

Verringert die VerticalOffset von ViewportHeight. (Installationen IScrollInfo @)

PerformGesture
public void PerformGesture(GestureModifiers modifiers, Gesture action, Point down, Point up, Diagram other)
diagramPanel.PerformGesture(modifiers, action, down, up, other)

Simulieren Sie einige Mausereignisse.

modifiers
a GestureModifiers @ Wert, eine Kombination aus Control, Shift und Alt
action
a Gestenwert, typischerweise MouseLeftButton; ein Wert von None tut nichts
down
Punkt in Modellkoordinaten für das Maus-Down-Ereignis; dieser Wert muss innerhalb des ViewportBounds @ liegen
up
Punkt in Modellkoordinaten für das Ereignis Maus nach oben; dieser Wert muss innerhalb des ViewportBounds @ sein
other
Wenn dies anders ist als das Diagramm dieses Panels, wird ein simuliertes Drag-and-Drop auftreten. (Dies verwendet kein echtes Windows-Drag-and-Drop in WPF.) Dies kann null sein, um das Diagramm dieses Panels zu verwenden, wodurch die gesamte Geste in diesem einen Diagramm verbleibt.
SetHorizontalOffset
public void SetHorizontalOffset(double offset)
diagramPanel.SetHorizontalOffset(offset)

Ändern Sie den Wert von HorizontalOffset durch Ändern des Werts von Position. (Implementierungen IScrollInfo @)

offset
SetScaleAndPosition
public void SetScaleAndPosition(double newscale, Point newpos, int animationtime, Action act)
diagramPanel.SetScaleAndPosition(newscale, newpos, animationtime, act)

Setzen Sie die Eigenschaften Scale und Position mit Animation.

newscale
der neue positive Doppelwert für Scale
newpos
der neue Punktwert für Position
animationtime
a Zeit in Millisekunden; wenn eine sehr kurze Zeit, keine Animation auftritt und die Eigenschaften einfach eingestellt werden
act
a Aktion, die nach Abschluss der Animation ausgeführt werden soll; null, um danach nichts zu tun
SetVerticalOffset
public void SetVerticalOffset(double offset)
diagramPanel.SetVerticalOffset(offset)

Ändern Sie den Wert von VerticalOffset durch Ändern des Werts von Position. (Implementierungen IScrollInfo @)

offset
StopAutoScroll
public void StopAutoScroll()
diagramPanel.StopAutoScroll()

Stoppen Sie jede laufende Auto-Scroll-Aktion.

TransformModelToView
public Point TransformModelToView(Point p)
result = diagramPanel.TransformModelToView(p)

Konvertieren Sie einen Punkt in Modellkoordinaten in Elementkoordinaten.

p
TransformViewToModel
public Point TransformViewToModel(Point p)
result = diagramPanel.TransformViewToModel(p)

Konvertieren Sie einen Punkt in Elementkoordinaten in Modellkoordinaten.

p
UpdateDiagramBounds
public void UpdateDiagramBounds()
diagramPanel.UpdateDiagramBounds()

Fordern Sie an, dass der DiagramBounds @ aktualisiert wird, mit einem Aufruf an ComputeDiagramBounds.

ZoomToFit
public void ZoomToFit()
diagramPanel.ZoomToFit()

Ändern Sie die Skala, so dass alles in der DiagramBounds passt in den Viewport.

ZoomToFit
public void ZoomToFit(StretchPolicy policy, Action afterwards)
diagramPanel.ZoomToFit(policy, afterwards)

Ändern Sie die Skala, so dass alles in der DiagramBounds passt in den Viewport.

policy
Normalerweise ist es ein Wert von Uniform, aber es kann UniformToFill sein
afterwards
eine Aktion, die nach Abschluss der Animation ausgeführt werden soll; kann null sein

Ereignisse

DiagramBoundsChanged
public event RoutedPropertyChangedEventHandler<Rect> DiagramBoundsChanged
diagramPanel.DiagramBoundsChanged += handler

Dieses Ereignis tritt auf, wenn sich die Grenzen oder die Ausrichtung des Diagramms ändern.

ViewportBoundsChanged
public event RoutedPropertyChangedEventHandler<Rect> ViewportBoundsChanged
diagramPanel.ViewportBoundsChanged += handler

Dieses Ereignis tritt auf, wenn sich der Viewport ändert.

Felder

AutoScrollDelayProperty
public static readonly DependencyProperty AutoScrollDelayProperty
value = DiagramPanel.AutoScrollDelayProperty

Identifiziert die Abhängigkeitseigenschaft AutoScrollDelay.

AutoScrollRegionProperty
public static readonly DependencyProperty AutoScrollRegionProperty
value = DiagramPanel.AutoScrollRegionProperty

Identifiziert die Abhängigkeitseigenschaft AutoScrollRegion.

AutoScrollTimeProperty
public static readonly DependencyProperty AutoScrollTimeProperty
value = DiagramPanel.AutoScrollTimeProperty

Identifiziert die Abhängigkeitseigenschaft AutoScrollTime.

CanHorizontallyScrollProperty
public static readonly DependencyProperty CanHorizontallyScrollProperty
value = DiagramPanel.CanHorizontallyScrollProperty

Identifiziert die Abhängigkeitseigenschaft CanHorizontallyScroll.

CanVerticallyScrollProperty
public static readonly DependencyProperty CanVerticallyScrollProperty
value = DiagramPanel.CanVerticallyScrollProperty

Identifiziert die Abhängigkeitseigenschaft CanVerticallyScroll.

DiagramBoundsChangedEvent
public static readonly RoutedEvent DiagramBoundsChangedEvent
value = DiagramPanel.DiagramBoundsChangedEvent

Identifiziert das DiagramBoundsChangedgeroutete Ereignis.

DiagramBoundsProperty
public static readonly DependencyProperty DiagramBoundsProperty
value = DiagramPanel.DiagramBoundsProperty

Identifiziert die Abhängigkeitseigenschaft DiagramBounds.

FixedBoundsProperty
public static readonly DependencyProperty FixedBoundsProperty
value = DiagramPanel.FixedBoundsProperty

Identifiziert die Abhängigkeitseigenschaft FixedBounds.

HorizontalContentAlignmentProperty
public static readonly DependencyProperty HorizontalContentAlignmentProperty
value = DiagramPanel.HorizontalContentAlignmentProperty

Identifiziert die Abhängigkeitseigenschaft HorizontalContentAlignment.

MaximumScaleProperty
public static readonly DependencyProperty MaximumScaleProperty
value = DiagramPanel.MaximumScaleProperty

Identifiziert die Abhängigkeitseigenschaft MaximumScale.

MinimumScaleProperty
public static readonly DependencyProperty MinimumScaleProperty
value = DiagramPanel.MinimumScaleProperty

Identifiziert die Abhängigkeitseigenschaft MinimumScale.

PaddingProperty
public static readonly DependencyProperty PaddingProperty
value = DiagramPanel.PaddingProperty

Bestimmt die Padding Dependency-Eigenschaft.

PositionProperty
public static readonly DependencyProperty PositionProperty
value = DiagramPanel.PositionProperty

Bestimmt die Positionsabhängigkeitseigenschaft.

ScaleProperty
public static readonly DependencyProperty ScaleProperty
value = DiagramPanel.ScaleProperty

Bestimmt die Scale Dependency Eigenschaft.

ScrollHorizontalLineChangeProperty
public static readonly DependencyProperty ScrollHorizontalLineChangeProperty
value = DiagramPanel.ScrollHorizontalLineChangeProperty

Identifiziert die Abhängigkeitseigenschaft ScrollHorizontalLineChange.

ScrollOwnerProperty
public static readonly DependencyProperty ScrollOwnerProperty
value = DiagramPanel.ScrollOwnerProperty

Identifiziert die Abhängigkeitseigenschaft ScrollOwner.

ScrollVerticalLineChangeProperty
public static readonly DependencyProperty ScrollVerticalLineChangeProperty
value = DiagramPanel.ScrollVerticalLineChangeProperty

Identifiziert die Abhängigkeitseigenschaft ScrollVerticalLineChange.

StretchProperty
public static readonly DependencyProperty StretchProperty
value = DiagramPanel.StretchProperty

Bestimmt die Stretch Dependency-Eigenschaft.

VerticalContentAlignmentProperty
public static readonly DependencyProperty VerticalContentAlignmentProperty
value = DiagramPanel.VerticalContentAlignmentProperty

Identifiziert die Abhängigkeitseigenschaft VerticalContentAlignment.

ViewportBoundsChangedEvent
public static readonly RoutedEvent ViewportBoundsChangedEvent
value = DiagramPanel.ViewportBoundsChangedEvent

Identifiziert das ViewportBoundsChangedgeroutete Ereignis.

ZoomPointProperty
public static readonly DependencyProperty ZoomPointProperty
value = DiagramPanel.ZoomPointProperty

Identifiziert die Abhängigkeitseigenschaft ZoomPoint.

ZoomTimeProperty
public static readonly DependencyProperty ZoomTimeProperty
value = DiagramPanel.ZoomTimeProperty

Identifiziert die Abhängigkeitseigenschaft ZoomTime.