LayoutManager
Esta clase es responsable de posicionar automáticamente todos los nodos en el diagrama.
Hereda de: FrameworkElement
Constructores
public LayoutManager()
layoutManager = LayoutManager()
El constructor para el gestor de distribución estándar que es el valor inicial de LayoutManager.
Propiedades
public bool Animated { get; set; }
value = layoutManager.Animated
layoutManager.Animated = value
Se pone o se establece si debe haber movimiento animado moviendo los nodos de sus posiciones actuales a sus posiciones establecidas.
public bool AnimationDisablesDiagram { get; set; }
value = layoutManager.AnimationDisablesDiagram
layoutManager.AnimationDisablesDiagram = value
Obtiene o establece si el Diagrama está deshabilitado durante una animación de diseño.
public int AnimationTime { get; set; }
value = layoutManager.AnimationTime
layoutManager.AnimationTime = value
Consigue o establece el tiempo en milisegundos que cualquier animación debe tomar.
public Point DefaultLocation { get; set; }
value = layoutManager.DefaultLocation
layoutManager.DefaultLocation = value
Obtiene o establece la ubicación desde la que aparecen los nodos no colocados al inicio de la animación.
public Diagram Diagram { get; internal set; }
value = layoutManager.Diagram
layoutManager.Diagram = value
Consigue el Diagrama para el cual este LayoutManager realiza diseños automáticos.
public LayoutInitial Initial { get; set; }
value = layoutManager.Initial
layoutManager.Initial = value
Obtiene o establece en qué condiciones una "inicialización" o "reinicialización" del modelo debe causar que los diseños sean invalidados.
public bool SkipsInvalidate { get; set; }
value = layoutManager.SkipsInvalidate
layoutManager.SkipsInvalidate = value
Obtiene o establece si LayoutChange) no debe hacer nada cuando se agrega una parte/removida/cambiada.
Métodos
public virtual bool CanLayoutPart(Part p, IDiagramLayout lay)
result = layoutManager.CanLayoutPart(p, lay)
Este predicado decide si una Parte debe participar en la distribución de IDiagramLayout.
- p
- a Nodo o Enlace
- lay
- el diseño que podría ser responsable de posicionar la parte
Devuelve: Es cierto que la parte es visible y si el LayoutId de la parte no es "None" y es "All" o el mismo valor que el Id del diseño. Falso para todos los Adornos y para todos los Nodos que son IsLinkLabel, y para todos los Grupos que no tienen diseño.
public virtual void InvalidateLayout(Part p, LayoutChange change)
layoutManager.InvalidateLayout(p, change)
Declarar que la IDiagramLayoutincluyendo una determinada Parte ahora es inválida y puede ser necesario que se realice de nuevo pronto.
- p
- debe ser una parte
- change
- un indicio sobre la razón de la necesidad de un nuevo diseño; esto se utiliza para decidir si un diseño es realmente necesario.
public virtual void LayoutDiagram(LayoutInitial init, bool immediate)
layoutManager.LayoutDiagram(init, immediate)
Solicite un re-leteo de todos los diseños inválidos en este diagrama.
- init
- Si el valor es InvalidateAll, todos IDiagramLayouts serán declarados inválidos, y todos serán realizados en el momento dado por el argumento. Si el valor es InvalidateIfNodesUnlocated, IDiagramLayouts será declarado inválido sólo si son responsables de Nodos que no tienen un lugar, porque sus valores X y/o Y son Double.NaN2 si el valor especificado
- immediate
- Si es cierto que este método realiza un diseño inmediato. Si falso este método programa un diseño para ocurrir pronto.
public void LayoutDiagram()
layoutManager.LayoutDiagram()
Solicitar un relevo de todos los nodos y enlaces en este diagrama.
public void MoveAnimated(Node node, Point newpos)
layoutManager.MoveAnimated(node, newpos)
Esto básicamente establece el valor de la Posición, pero con el movimiento animado.
- node
- newpos
- una nueva posición en las coordenadas modelo
protected virtual void PerformLayout()
layoutManager.PerformLayout()
Este método se llama asincrónicamente para diseñar un Diagrama.
Campos
public static readonly DependencyProperty AnimatedProperty
value = LayoutManager.AnimatedProperty
Identifica la propiedad de dependencia animada.
public static readonly DependencyProperty AnimationDisablesDiagramProperty
value = LayoutManager.AnimationDisablesDiagramProperty
Identifica la propiedad AnimationDisablesDiagramdependencia.
public static readonly DependencyProperty AnimationTimeProperty
value = LayoutManager.AnimationTimeProperty
Identifica la propiedad AnimationTimedependencia.
public static readonly DependencyProperty DefaultLocationProperty
value = LayoutManager.DefaultLocationProperty
Identifica la propiedad DefaultLocationdependencia.
public static readonly DependencyProperty InitialProperty
value = LayoutManager.InitialProperty
Identifica la propiedad de dependencia inicial.