LayoutManager

StockSharp.Xaml.Diagram.GXDiagram

Этот класс отвечает за автоматическое позиционирование всех узлов на диаграмме.

Наследует: FrameworkElement

Конструкторы

LayoutManager
public LayoutManager()
layoutManager = LayoutManager()

Конструктор для стандартного менеджера макета, который является начальным значением LayoutManager.

Свойства

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

Получает или устанавливает, должно ли быть анимированное движение, перемещающее узлы из их текущих позиций в их выложенные позиции.

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

Получает или устанавливает, отключена ли Диаграмма во время анимации макета.

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

Получает или устанавливает время в миллисекундах, которое должна занять любая анимация.

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

Получает или устанавливает местоположение, из которого неположенные узлы появляются в начале анимации.

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

Получает Диаграмму, для которой этот LayoutManager выполняет автоматические макеты.

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

Получает или устанавливает, при каких условиях «инициализация» или «перезагрузка» модели должна привести к признанию макетов недействительными.

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

Получает или устанавливает, должен ли LayoutChange ничего не делать, когда часть добавлена/удален/изменен.

Методы

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

Этот предикат решает, должна ли часть участвовать в макете IDiagramLayout.

p
Узел или ссылка
lay
макет, который может отвечать за позиционирование части

Возвращает: Правда, если часть видна и если LayoutId не является «Никто» и является либо «Всем», либо тем же значением, что и идентификатор макета. Ложно для всех украшений и для всех узлов, которые являются IsLinkLabel, и для всех групп, у которых нет макета.

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

Объявляем, что IDiagramLayout, включая данную часть, в настоящее время недействительна и, возможно, в ближайшее время должна быть выполнена снова.

p
должна быть частью
change
подсказка о причине необходимости нового макета; это используется, чтобы решить, действительно ли нужен макет.
LayoutDiagram
public virtual void LayoutDiagram(LayoutInitial init, bool immediate)
layoutManager.LayoutDiagram(init, immediate)

Запросить повторное размещение всех недействительных макетов на этой диаграмме.

init
Если значение InvalidateAll, все IDiagramLayouts будут признаны недействительными, и все они будут выполнены в момент, указанный в аргументе. Если значение InvalidateIfNodesUnlocated, IDiagramLayouts будет признано недействительным, только если они несут ответственность за Узлы, которые не имеют местоположения, потому что их значения X и / или Y являются Double.NaN. Если значение ValidateAll, все IDiagramLayouts будут объявлены действительными, и никакой макет не произойдет до тех пор, пока не произойдет что-то еще, чтобы аннулировать макет. Если значение Нет, валидность макета не изменяется - любые недействительные макеты будут выполнены в указанное время.
immediate
Если это правда, этот метод выполняет немедленную компоновку. Если этот метод неверен, планировка должна произойти в ближайшее время.
LayoutDiagram
public void LayoutDiagram()
layoutManager.LayoutDiagram()

Запросите повторное размещение всех узлов и ссылок на этой диаграмме.

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

Это в основном просто устанавливает значение позиции, но с анимированным движением.

node
newpos
Новое положение в координатах модели
PerformLayout
protected virtual void PerformLayout()
layoutManager.PerformLayout()

Этот метод называется асинхронно для компоновки диаграммы.

Поля

AnimatedProperty
public static readonly DependencyProperty AnimatedProperty
value = LayoutManager.AnimatedProperty

Идентифицирует свойство зависимостей Animated.

AnimationDisablesDiagramProperty
public static readonly DependencyProperty AnimationDisablesDiagramProperty
value = LayoutManager.AnimationDisablesDiagramProperty

Идентифицирует свойство зависимости AnimationDisablesDiagram.

AnimationTimeProperty
public static readonly DependencyProperty AnimationTimeProperty
value = LayoutManager.AnimationTimeProperty

Идентифицирует свойство зависимости AnimationTime.

DefaultLocationProperty
public static readonly DependencyProperty DefaultLocationProperty
value = LayoutManager.DefaultLocationProperty

Идентифицирует свойство зависимости DefaultLocation.

InitialProperty
public static readonly DependencyProperty InitialProperty
value = LayoutManager.InitialProperty

Идентифицирует свойство исходной зависимости.