PartManager

StockSharp.Xaml.Diagram.GXDiagram

Diese Klasse behandelt das geänderte Ereignis für das Diagrammmodell und ist für das Erstellen und Entfernen von Knoten und Links für die Daten im Modell verantwortlich.

Erbt von: FrameworkElement

Konstruktoren

PartManager
public PartManager()
partManager = PartManager()

Der Konstruktor für den Standardteilemanager, der der Anfangswert von PartManager ist.

Eigenschaften

AddsToLogicalTree
public bool AddsToLogicalTree { get; set; }
value = partManager.AddsToLogicalTree
partManager.AddsToLogicalTree = value

Bestimmt oder legt fest, ob Teile hinzugefügt und aus dem logischen Baum entfernt werden. [WPF only]

ChecksTransactionLevel
public bool ChecksTransactionLevel { get; set; }
value = partManager.ChecksTransactionLevel
partManager.ChecksTransactionLevel = value

Gibt oder legt fest, ob dieser Part-Manager Warnungen an Trace-Hörer ausgibt, wenn Modelländerungen außerhalb einer Transaktion auftreten.

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

Erhaltet das Diagramm, für das dieses PartManager die Lebensdauer von Teilen in Abhängigkeit vom Inhalt des Modells verwaltet.

LinksCount
public int LinksCount { get; }
value = partManager.LinksCount

Gibt die aktuelle Anzahl von Links im Diagramm ab, einschließlich Links, die nicht an Daten gebunden sind.

Nodes
public IEnumerable<Node> Nodes { get; }
value = partManager.Nodes

Erhaltet ein IEnumerable<Node>, das alle Knoten enthält, die sich im Diagramm befinden, einschließlich Gruppen, einschließlich Knoten, die nicht an Daten gebunden sind, aber keine Verzierungen.

NodesCount
public int NodesCount { get; }
value = partManager.NodesCount

Gibt die aktuelle Anzahl von Knoten im Diagramm ab, einschließlich Knoten, die nicht an Daten gebunden sind und Gruppen enthalten, aber Verzierungen ausschließen.

UpdatesRouteDataPoints
public bool UpdatesRouteDataPoints { get; set; }
value = partManager.UpdatesRouteDataPoints
partManager.UpdatesRouteDataPoints = value

Bekommt oder legt fest, ob dieser PartManager Link aufrufen soll) für jeden Link, der eine neue Punkteliste hat.

Methoden

AddLinkForData
public Link AddLinkForData(object linkdata, IDiagramModel model)
result = partManager.AddLinkForData(linkdata, model)

Stellen Sie sicher, dass ein Link für einige Daten im Modell vorhanden ist, der zu LinkLayer hinzugefügt wird, der von LayerName angegeben wird.

linkdata
die Daten in der, die Link-Beziehungsinformationen enthält
model
das Modell, in dem sich das befindet, ein ILinksModel

Rückgabe: der Link für die , entweder eine bestehende oder eine neu erstellte oder null, wenn IDiagramModel gibt false oder wenn das Diagramm uninitialisiert ist

AddLinkForData
public Link AddLinkForData(object fromnodedata, object tonodedata, IDiagramModel model)
result = partManager.AddLinkForData(fromnodedata, tonodedata, model)

Stellen Sie sicher, dass ein Link für die Linkbeziehung zwischen dem angegebenen Knotendatenpaar existiert, der zu LinkLayer hinzugefügt wird, der von LayerName angegeben wird.

fromnodedata
die Daten, aus denen die Linkbeziehung stammt
tonodedata
die Daten, auf die die Linkbeziehung geht
model
das Modell, in dem sich die Knotendaten befinden, nicht ILinksModel

Rückgabe: der Link für die Verbindung der beiden Knotendaten, entweder eine bestehende oder eine neu erstellte, oder null, wenn IDiagramModel) false zurückgibt oder wenn das Diagramm uninitialisiert ist

AddNodeForData
public Node AddNodeForData(object nodedata, IDiagramModel model)
result = partManager.AddNodeForData(nodedata, model)

Stellen Sie sicher, dass für einige Daten im Modell ein Knoten vorhanden ist, der zu dem NodeLayer hinzugefügt wird, der von LayerName angegeben wird.

nodedata
die Daten in der, die Knoteninformationen enthält
model
Das Modell, in dem die

Rückgabe: der Knoten für die , entweder eine bestehende oder eine neu erstellte oder null, wenn IDiagramModel gibt false oder wenn das Diagramm uninitialisiert ist

CopyParts
public virtual ICopyDictionary CopyParts(IEnumerable<Part> coll, IDiagramModel destmodel)
result = partManager.CopyParts(coll, destmodel)

Kopieren Sie eine Sammlung von Teilen aus diesem Modell in ein bestimmtes Modell.

coll
eine Sammlung von Teilen, die in diesem Modell enthalten sind
destmodel
Wenn null, erzeugt dies ein Modell wie dieses, indem Sie IDataCollection aufrufen; das neue Modell ist verfügbar von der zurückgegebenen ICopyDictionary als DestinationModel-Eigenschaft.

Rückgabe: ein ICopyDictionary, das Originalteile den kopierten zuordnet

DeleteParts
public virtual void DeleteParts(IEnumerable<Part> coll)
partManager.DeleteParts(coll)

Entfernen Sie eine Sammlung von Teilen aus diesem Modell.

coll
eine Sammlung von Teilen, die in diesem Modell enthalten sind
DoRebuildLinkElements
protected virtual void DoRebuildLinkElements()
partManager.DoRebuildLinkElements()

Dies wird von RebuildLinkElements aufgerufen, um Links im Diagramm zu konstruieren oder zu rekonstruieren.

DoRebuildNodeElements
protected virtual void DoRebuildNodeElements()
partManager.DoRebuildNodeElements()

Erstellen Sie neue Knoten für alle Modelldaten und fügen Sie sie dem Diagramm hinzu.

FilterLinkForData
protected virtual bool FilterLinkForData(object fromnodedata, object tonodedata, IDiagramModel model)
result = partManager.FilterLinkForData(fromnodedata, tonodedata, model)

Entscheiden Sie, ob die Verknüpfungsbeziehung zwischen einem bestimmten Knotendatenpaar im Diagramm durch einen Link dargestellt werden soll.

fromnodedata
die Daten, aus denen die Linkbeziehung stammt
tonodedata
die Daten, auf die die Linkbeziehung geht
model
das Modell, in dem sich die Knotendaten befinden, nicht ILinksModel

Rückgabe: true nur wenn IDiagramModel soll einen Link zum Diagramm machen und hinzufügen

FilterLinkForData
protected virtual bool FilterLinkForData(object linkdata, IDiagramModel model)
result = partManager.FilterLinkForData(linkdata, model)

Entscheiden Sie, ob ein bestimmtes Element im Diagramm durch einen Link dargestellt werden soll.

linkdata
die Daten in der, die Link-Beziehungsinformationen enthält
model
das Modell, in dem sich das befindet, ein ILinksModel

Rückgabe: true nur wenn IDiagramModel soll einen Link zum Diagramm machen und hinzufügen

FilterNodeForData
protected virtual bool FilterNodeForData(object nodedata, IDiagramModel model)
result = partManager.FilterNodeForData(nodedata, model)

Entscheiden Sie, ob ein bestimmtes Element im Diagramm durch einen Knoten dargestellt werden soll.

nodedata
die Daten in der, die Knoteninformationen enthält
model
Das Modell, in dem die

Rückgabe: true nur wenn IDiagramModel soll einen Knoten zu dem Diagramm zu machen und hinzufügen

FindCategoryForNode
protected virtual string FindCategoryForNode(object nodedata, IDiagramModel model, bool isgroup, bool islinklabel)
result = partManager.FindCategoryForNode(nodedata, model, isgroup, islinklabel)

Bestimmen Sie die Kategorie für den Knoten, um zwischen verschiedenen Vorlagen für den Knoten entscheiden zu können.

nodedata
model
isgroup
islinklabel

Rückgabe: das Ergebnis des Aufrufs von Object

FindCommonDataModel
public virtual IDiagramModel FindCommonDataModel(object fromnodedata, object tonodedata)
result = partManager.FindCommonDataModel(fromnodedata, tonodedata)

Finden Sie das Modell für die beiden Datenobjekte, die Knoten darstellen.

fromnodedata
tonodedata

Rückgabe: Normalerweise das Modell, aber kann die PartsModel zurückgeben, wenn beide und Nodes sind, ansonsten null.

FindLinkForData
public Link FindLinkForData(object fromnodedata, object tonodedata, IDiagramModel model)
result = partManager.FindLinkForData(fromnodedata, tonodedata, model)

Wenn ein Knotendatenpaar vorhanden ist, für das eine Verknüpfungsbeziehung besteht, finden Sie den entsprechenden Link in diesem Diagramm.

fromnodedata
die Daten, aus denen die Linkbeziehung stammt
tonodedata
die Daten, auf die die Linkbeziehung geht
model
das Modell, in dem sich die Knotendaten befinden, nicht ILinksModel

Rückgabe: a Link oder null, wenn eine solche Verknüpfung nicht für dieses Knotendatenpaar erstellt wurde

FindLinkForData
public Link FindLinkForData(object linkdata, IDiagramModel model)
result = partManager.FindLinkForData(linkdata, model)

Wenn einige in einem gegeben sind, finden Sie den entsprechenden Link in diesem Diagramm.

linkdata
die Daten in der, die Link-Beziehungsinformationen enthält
model
das Modell, in dem sich das befindet, ein ILinksModel

Rückgabe: a Link oder null, wenn ein solcher Link nicht für diese Daten erstellt wurde

FindLinksForData
public virtual IEnumerable<Link> FindLinksForData(IDataCollection datacoll)
result = partManager.FindLinksForData(datacoll)

Geben Sie eine Sammlung von Links in diesem Diagramm zurück, die einigen Modelldaten entsprechen.

datacoll
ein IDataCollection

Rückgabe: Wenn dieses Modell ein ILinksModel ist, ruft es einfach IDiagramModel auf und sammelt die gefundenen Links. Andernfalls sucht es nach Links, die mit den Knoten in der Datensammlung verbunden sind.

FindNodeDataModel
public virtual IDiagramModel FindNodeDataModel(object nodedata)
result = partManager.FindNodeDataModel(nodedata)

Finden Sie das Modell für einige Daten.

nodedata

Rückgabe: Normalerweise das Modell, aber kann die PartsModel zurückgeben, wenn es sich um einen Teil handelt.

FindNodeForData
public Node FindNodeForData(object nodedata, IDiagramModel model)
result = partManager.FindNodeForData(nodedata, model)

Wenn einige in einem gegeben sind, finden Sie den entsprechenden Knoten in diesem Diagramm.

nodedata
die Daten in der, die Knoteninformationen enthält
model
Das Modell, in dem die

Rückgabe: ein Knoten oder null, wenn ein solcher Knoten nicht für diese Daten erstellt wurde

FindNodesForData
public virtual IEnumerable<Node> FindNodesForData(IDataCollection datacoll)
result = partManager.FindNodesForData(datacoll)

Geben Sie eine Sammlung von Knoten in diesem Diagramm zurück, die einigen Modelldaten entspricht.

datacoll
ein IDataCollection
FindPartsForData
public virtual IEnumerable<Part> FindPartsForData(IDataCollection datacoll)
result = partManager.FindPartsForData(datacoll)

Geben Sie eine Sammlung von Teilen in diesem Diagramm zurück, die einigen Modelldaten entspricht.

datacoll

Rückgabe: eine Sequenz von Nodes und Links

FindTemplateForNode
protected virtual DataTemplate FindTemplateForNode(object nodedata, IDiagramModel model, bool isgroup, bool islinklabel, string category)
result = partManager.FindTemplateForNode(nodedata, model, isgroup, islinklabel, category)

Wenn Sie eine Kategorie und die Knotendaten angeben, finden Sie ein DataTemplate, das Sie beim Erstellen des Knotens oder der Gruppe verwenden können.

nodedata
model
isgroup
islinklabel
category

Rückgabe: a DataTemplate entweder von NodeTemplate oder NodeTemplateDictionary genommen (oder wenn es wahr ist, entweder von GroupTemplate oder GroupTemplateDictionary) oder null, wenn keine Vorlage gefunden wird

MakeLinkForData
protected virtual Link MakeLinkForData(object linkdata, IDiagramModel model, DataTemplate templ, string category)
result = partManager.MakeLinkForData(linkdata, model, templ, category)

Erstellen Sie einen neuen Link, indem Sie dessen Inhalt und ContentTemplate Eigenschaften festlegen.

linkdata
die Daten, an die dieser Link gebunden ist; darf kein Link oder UIElement sein
model
Das Modell, in dem die
templ
das DataTemplate für die ContentTemplate-Eigenschaft
category
Kategorie für den Link

Rückgabe: Ein neu erstellter Link

MakeNodeForData
protected virtual Node MakeNodeForData(object nodedata, IDiagramModel model, bool isgroup, bool islinklabel, string category, DataTemplate templ)
result = partManager.MakeNodeForData(nodedata, model, isgroup, islinklabel, category, templ)

Erstellen Sie einen neuen Knoten, indem Sie dessen Inhalt und ContentTemplate Eigenschaften festlegen.

nodedata
die Daten, an die dieser Knoten gebunden ist; darf kein Knoten oder UIElement sein
model
Das Modell, in dem die
isgroup
ob der Knoten eine Gruppe anstelle eines Knotens sein sollte
islinklabel
ob der Knoten als Label-Knoten für einen Link fungiert
category
die Kategorie des Knotens
templ
das DataTemplate für die ContentTemplate-Eigenschaft

Rückgabe: ein neu erstellter Knoten oder eine Gruppe, gebunden an PartBinding

OnMemberAdded
protected virtual void OnMemberAdded(Node group, Part part)
partManager.OnMemberAdded(group, part)

Aufrufen, nachdem ein Teil zu den Mitgliedern eines Gruppenknotens hinzugefügt wurde.

group
a Gruppe
part
a Teil, der dem
OnMemberRemoved
protected virtual void OnMemberRemoved(Node group, Part part)
partManager.OnMemberRemoved(group, part)

Aufruf, nachdem ein Teil von den Mitgliedern eines Gruppenknotens entfernt wurde.

group
a Gruppe
part
a Teil, der aus dem
OnModelChanged
public virtual void OnModelChanged(ModelChangedEventArgs e)
partManager.OnModelChanged(e)

Dies wird für jedes geänderte Ereignis des Modells aufgerufen.

e
Die Eigenschaft Change gibt eine grundlegende Beschreibung der Änderung am Modell
OnNodeAdded
protected virtual void OnNodeAdded(Node node)
partManager.OnNodeAdded(node)

Aufrufen, nachdem a dem Diagramm hinzugefügt wurde.

node
a Knotenpunkt
OnNodeRemoved
protected virtual void OnNodeRemoved(Node node, NodeLayer layer)
partManager.OnNodeRemoved(node, layer)

Aufrufen, nachdem a aus dem Diagramm entfernt wurde.

node
a Knotenpunkt
layer
NodeLayer, von dem die
OnNodeRemoving
protected virtual void OnNodeRemoving(Node node)
partManager.OnNodeRemoving(node)

Aufrufen, bevor a aus dem Diagramm entfernt wird.

node
a Knotenpunkt
RealizeSubGraphMembers
public virtual void RealizeSubGraphMembers(Group sg)
partManager.RealizeSubGraphMembers(sg)

Dies wird von ExpandSubGraph aufgerufen, um sicherzustellen, dass die Mitglieder der Gruppe Nodes und Links alle im Diagramm vorhanden sind.

sg
a Gruppe
RealizeTreeChildren
public virtual void RealizeTreeChildren(Node parent)
partManager.RealizeTreeChildren(parent)

Dies wird von ExpandTree aufgerufen, um sicherzustellen, dass alle verbundenen Knoten des Knotens im Diagramm vorhanden sind.

parent
RebuildLinkElements
public void RebuildLinkElements()
partManager.RebuildLinkElements()

Alle vorhandenen Links verwerfen und dann neue für alle Modelldaten erstellen und sie dem Diagramm hinzufügen.

RebuildNodeElements
public void RebuildNodeElements()
partManager.RebuildNodeElements()

Alle vorhandenen Nodes und Links verwerfen und dann neue für alle Modelldaten erstellen und sie dem Diagramm hinzufügen.

ReleaseSubGraphMembers
public virtual void ReleaseSubGraphMembers(Group sg)
partManager.ReleaseSubGraphMembers(sg)

Dies wird von CollapseSubGraph aufgerufen, um das Entfernen der Mitgliedsknoten und Links aus dem Diagramm zu ermöglichen.

sg
a Gruppe
ReleaseTreeChildren
public virtual void ReleaseTreeChildren(Node parent)
partManager.ReleaseTreeChildren(parent)

Dies wird von CollapseTree aufgerufen, um alle untergeordneten Knoten und Links für einen bestimmten Knoten aus dem Diagramm entfernen zu können.

parent
RemoveLinkForData
public void RemoveLinkForData(object fromnodedata, object tonodedata, IDiagramModel model)
partManager.RemoveLinkForData(fromnodedata, tonodedata, model)

Entfernen Sie einen Link, der für ein Paar von gegebenen Knotendaten vorhanden ist.

fromnodedata
die Daten, aus denen die Linkbeziehung stammt
tonodedata
die Daten, auf die die Linkbeziehung geht
model
das Modell, in dem sich die Knotendaten befinden, nicht ILinksModel
RemoveLinkForData
public void RemoveLinkForData(object linkdata, IDiagramModel model)
partManager.RemoveLinkForData(linkdata, model)

Entfernen Sie einen Link, der im Diagramm für die .

linkdata
die Daten in der, die Link-Beziehungsinformationen enthält
model
das Modell, in dem sich das befindet, ein ILinksModel
RemoveNodeForData
public void RemoveNodeForData(object nodedata, IDiagramModel model)
partManager.RemoveNodeForData(nodedata, model)

Entfernen Sie einen Knoten in diesem Diagramm, der für die .

nodedata
model
SelectData
public virtual void SelectData(IDataCollection datacoll)
partManager.SelectData(datacoll)

Wählen Sie die Teile in diesem Diagramm aus, die einer Sammlung von Modelldaten entsprechen.

datacoll
ein IDataCollection