ResizingTool

StockSharp.Xaml.Diagram.GXDiagram.Tool

ResizingTool用于交互改变元素的大小.

继承自: DiagramTool

属性

AdornedElement
protected FrameworkElement AdornedElement { get; set; }
value = resizingTool.AdornedElement
resizingTool.AdornedElement = value

获取或设置正在调整的当前 FrameworkElement 。

AdornedNode
protected Node AdornedNode { get; }
value = resizingTool.AdornedNode

获取AdornedElement所在的当前节点 。

CellSize
public Size CellSize { get; set; }
value = resizingTool.CellSize
resizingTool.CellSize = value

获取或设置选定元素的单元格大小,这样再大小仅限于单元格大小的倍数.

Handle
protected FrameworkElement Handle { get; set; }
value = resizingTool.Handle
resizingTool.Handle = value

获取或设置正在拖曳的当前调整控件大小 。

MaxSize
public Size MaxSize { get; set; }
value = resizingTool.MaxSize
resizingTool.MaxSize = value

获取或设置选定元素的最大大小。

MinSize
public Size MinSize { get; set; }
value = resizingTool.MinSize
resizingTool.MinSize = value

获取或设定选定元素的最小大小。

OriginalBounds
protected Rect OriginalBounds { get; set; }
value = resizingTool.OriginalBounds
resizingTool.OriginalBounds = value

在模式坐标中,当用户开始重定大小时,获取或设定AdornedElement的边界.

OriginalLocation
protected Point OriginalLocation { get; set; }
value = resizingTool.OriginalLocation
resizingTool.OriginalLocation = value

在模式坐标中,当用户开始重定大小时,获取或设定AdornedNode的位置.

方法

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

ResizingTool 当一个鼠标下移的控点上出现事件时, 可能会运行 。

ComputeCellSize
protected virtual Size ComputeCellSize()
result = resizingTool.ComputeCellSize()

大小应该是通过这种方法返回的值的倍数.

返回值: CellSize, 除非其宽度和高度的一面或二面都是Double.NaN或0。如果情况是这样,它使用节点ResizeCellSize的宽度和/或高。如果宽度和高度的一面或两面都仍然是Double.NaN或0,它就会在AdornedNode(即DragOverSnapEnabled)后搜索一个网格断裂节点,并使用它的DragOverSnapCellSize。如果它找不到这样的网格断裂节点,或者宽和高的一面或两面都是NaN,那么它就使用图的GridSnapCellSize(即GridSnapEnabled)来进行断裂断裂断裂断断断断断断断断断断断断断断断断断断断断断断断断断断断断断断断断断断断断断断断断断断断断断断断断断断断断断断断断断断断断断断断断断断断断断断断断断断断断

ComputeMaxSize
protected virtual Size ComputeMaxSize()
result = resizingTool.ComputeMaxSize()

有效的最大再调整大小是MaxSize和FrameworkElement的MaxWidth和MaxHeight的最小尺寸。

返回值: 调整大小时的所希望的最大大小

ComputeMinSize
protected virtual Size ComputeMinSize()
result = resizingTool.ComputeMinSize()

有效的最小再缩放大小是MinSize和FrameworkElement的MinWidth和MinHeight的最长尺寸.

返回值: 调整大小时的最小要求大小

ComputeResize
protected virtual Rect ComputeResize(Point newPoint, Spot spot, Size min, Size max, bool reshape)
result = resizingTool.ComputeResize(newPoint, spot, min, max, reshape)

假设OriginalBounds中的一分点和一分点,计算出一分新的Rect.

newPoint
a 模型坐标中的点
spot
拖取手柄的矩形界限中的点
min
计算出的矩形必须至少与这些维度相同
max
计算出的矩形不得大于这些维度
reshape
矩形的相向比是否可能改变
DoActivate
public override void DoActivate()
resizingTool.DoActivate()

开始调整大小 。

DoCancel
public override void DoCancel()
resizingTool.DoCancel()

恢复AdornedElement的OriginalBounds并停止此工具.

DoDeactivate
public override void DoDeactivate()
resizingTool.DoDeactivate()

这停止了当前编辑(StopTransaction) 。

DoMouseMove
public override void DoMouseMove()
resizingTool.DoMouseMove()

呼叫 Rect),并使用由鼠标点决定的新界限.

DoMouseUp
public override void DoMouseUp()
resizingTool.DoMouseUp()

调用 Rect),基于鼠标最近点的矩形,并在停止工具前提出"对象重塑"事件.

DoResize
protected virtual void DoResize(Rect newr)
resizingTool.DoResize(newr)

更改 AdornedElement 的宽度和/或高度, 以及 AdornedNode 的位置, 给装饰元素设定了新的长方形界限 。

newr
DoStart
public override void DoStart()
resizingTool.DoStart()

启动此工具时抓取鼠标 。

DoStop
public override void DoStop()
resizingTool.DoStop()

停止此工具时释放鼠标抓取 。

UpdateAdornments
public override void UpdateAdornments(Part part)
resizingTool.UpdateAdornments(part)

显示一个带有调整控点的 Adornment, 其大小位于 AdornedElement 边界边缘, 如果选择了并可见节点, 如果 CanResize 是真的 。

part

字段

CellSizeProperty
public static readonly DependencyProperty CellSizeProperty
value = ResizingTool.CellSizeProperty

确定CellSize的受抚养财产。

MaxSizeProperty
public static readonly DependencyProperty MaxSizeProperty
value = ResizingTool.MaxSizeProperty

确定MaxSize的受抚养财产。

MinSizeProperty
public static readonly DependencyProperty MinSizeProperty
value = ResizingTool.MinSizeProperty

确定MinSize的受抚养财产。