DraggingTool

StockSharp.Xaml.Diagram.GXDiagram.Tool

DraggingTool用于用鼠标移动或复制所选部件.

继承自: DiagramTool

属性

CopiedParts
public Dictionary<Part, Info> CopiedParts { get; set; }
value = draggingTool.CopiedParts
draggingTool.CopiedParts = value

获取或设置此工具复制的部件的收藏 。

CopiesEffectiveCollection
public bool CopiesEffectiveCollection { get; set; }
value = draggingTool.CopiesEffectiveCollection
draggingTool.CopiesEffectiveCollection = value

获取或设定复制操作的扩展选择是复制还是仅被选中的部分 。

CurrentPart
protected Part CurrentPart { get; set; }
value = draggingTool.CurrentPart
draggingTool.CurrentPart = value

获取或设置鼠标点所发现的部分 {}% StandardMouseSelect} 。

DraggedParts
public Dictionary<Part, Info> DraggedParts { get; set; }
value = draggingTool.DraggedParts
draggingTool.DraggedParts = value

获取或设置正在拖曳的部件的收藏 。

DragOutStarted
protected bool DragOutStarted { get; set; }
value = draggingTool.DragOutStarted
draggingTool.DragOutStarted = value

获取或设定是否已经由此工具启动潜在的外部拖放 。

DragOverPart
protected Part DragOverPart { get; set; }
value = draggingTool.DragOverPart
draggingTool.DragOverPart = value

获取或设置一个部分, 而不是被拖动, 鼠标已经结束, 并适当设置其 & # # #IsDropOntoAccepted+# # 属性 。

DragOverSnapArea
public DragOverSnapArea DragOverSnapArea { get; set; }
value = draggingTool.DragOverSnapArea
draggingTool.DragOverSnapArea = value

获取或设定是否将任何部件拖入图表或任何部件,使其位置被断到网格点上。

DropOntoEnabled
public bool DropOntoEnabled { get; set; }
value = draggingTool.DropOntoEnabled
draggingTool.DropOntoEnabled = value

获取或设定固定部件是否在拖曳过程中临时设定其 IsDropOntoAccepted 属性为真 。

Dropped
internal bool Dropped { get; set; }
value = draggingTool.Dropped
draggingTool.Dropped = value

获取或设定拖放开始后是否发生了下降 。

FromPortId
public string FromPortId { get; set; }
value = draggingTool.FromPortId
draggingTool.FromPortId = value

获取或设置当点时使用的端口标识符)由于DropOntoBehavior而创建了新链接,即AddsLinkFromNode,AddsLinkToNode,或SplicesIntoLink.

Inclusions
public EffectiveCollectionInclusions Inclusions { get; set; }
value = draggingTool.Inclusions
draggingTool.Inclusions = value

获取或设定移动或复制一个节点,也包含节点的所有子嗣及其后人,以及这些附加节点的链接.

IsRealtime
public bool IsRealtime { get; set; }
value = draggingTool.IsRealtime
draggingTool.IsRealtime = value

获取或设定部件在拖曳过程中是否连续移动,或者如果一个简单的物体被拖曳,而部件实际上只移动到鼠标上。

Source
public static DraggingTool Source { get; internal set; }
value = DraggingTool.Source
DraggingTool.Source = value

这是一个实验属性,它得到DraggingTool,它是模拟拖放的来源.

StartPoint
protected Point StartPoint { get; set; }
value = draggingTool.StartPoint
draggingTool.StartPoint = value

获取或设置鼠标点,从该点开始移动部件。

ToPortId
public string ToPortId { get; set; }
value = draggingTool.ToPortId
draggingTool.ToPortId = value

获取或设置当点时使用的端口标识符)由于DropOntoBehavior而创建了新链接,即AddsLinkFromNode,AddsLinkToNode,或SplicesIntoLink.

方法

AcceptData
public virtual IDataCollection AcceptData(IDataObject dataobj)
result = draggingTool.AcceptData(dataobj)

Convert an IDataObject into an IDataCollection.

dataobj
以 IDataObject+++为单位, 通常为 DragEventArgs.Data++++++的值 。

返回值: 一张IDataCollection,图的模型可以复制

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

如果此图允许选择和移动/复制/拖动出局, 如果鼠标移动到足够远的地方是拖动而不是点击, 如果 FindDraggablePart 在鼠标下行点找到一个可选择的部分, 此工具可以运行 。

ComputeEffectiveCollection
public virtual Dictionary<Part, Info> ComputeEffectiveCollection(IEnumerable<Part> parts)
result = draggingTool.ComputeEffectiveCollection(parts)

查找要移动或复制的节点和链接的实际收藏, 给定一个初始收藏 。

parts

返回值: a 部件词典, 映射到拥有原位置的Informs

ComputeFocusPoint
protected virtual Point ComputeFocusPoint(IEnumerable<Part> parts)
result = draggingTool.ComputeFocusPoint(parts)

确定外部拖曳的焦点点或热点。

parts
正在拖曳的已复制的节点和链接

返回值: a 模型坐标中的点

ComputeMove
protected virtual Point ComputeMove(Node n, Point newloc, Dictionary<Part, Info> draggedparts)
result = draggingTool.ComputeMove(n, newloc, draggedparts)

这种方法计算出一个节点的新位置,因为需要一个新的位置和拖曳部件的词典.

n
正在移动的节点
newloc
拟新建的节点位置,在模型坐标中
draggedparts
a 正在拖取的部件词典

返回值: 模型坐标中节点的新位置

ConsiderDragOver
protected virtual bool ConsiderDragOver(Point pt, Part p)
result = draggingTool.ConsiderDragOver(pt, p)

确定当前拖曳的选中项(DraggedParts 或 CopiedParts) 是否有效, 并根据其 DropOntoBehavior 的 DropOntoBehavior 投放到目标部分 。

pt
通常为当前鼠标点, 在模型坐标中
p
鼠标下选择位置的分数
ConsiderSnapTo
protected virtual bool ConsiderSnapTo(Node moving, Point pt, Node snapper, Dictionary<Part, Info> draggedparts)
result = draggingTool.ConsiderSnapTo(moving, pt, snapper, draggedparts)

如果给定的节点能够控制给定的节点的移动,则这个上游是真实的.

moving
正在拖取的节点
pt
模型坐标中的点, 通常是当前鼠标点
snapper
可能控制节点运动的节点
draggedparts
a 正在拖取的部件词典

返回值: 如果不是在DragOverSnapEnabled中, 则为真

DoActivate
public override void DoActivate()
draggingTool.DoActivate()

开始拖动操作 。

DoCancel
public override void DoCancel()
draggingTool.DoCancel()

中止任何拖曳操作 。

DoDragDrop
protected virtual DragDropEffects DoDragDrop(IDataCollection data, DragDropEffects eff)
result = draggingTool.DoDragDrop(data, eff)

Call DragDrop.DoDragDrop.

data
表示要拖取的数据
eff
将此选项作为第三个参数传递到 DragDrop.DoDragDrop

返回值: 电话DragDrop.DoDragDrop的结果

DoDragEnter
public virtual void DoDragEnter(DragEventArgs e)
draggingTool.DoDragEnter(e)

Update the DragEventArgs.Effects.

e
DoDragLeave
public virtual void DoDragLeave(DragEventArgs e)
draggingTool.DoDragLeave(e)

如果不允许跳出,请移除任何临时复制的部分。

e
DoDragOut
protected virtual void DoDragOut()
draggingTool.DoDragOut()

启动拖放操作 。

DoDragOver
public virtual void DoDragOver(DragEventArgs e)
draggingTool.DoDragOver(e)

对于复制件或外部移动,为拖放数据创建并移动复制件部件.

e
DoDrop
public virtual void DoDrop(DragEventArgs e)
draggingTool.DoDrop(e)

执行拖放的滴入。

e
DoGiveFeedback
public virtual void DoGiveFeedback(GiveFeedbackEventArgs e)
draggingTool.DoGiveFeedback(e)

默认这没什么用

e
DoKeyDown
public override void DoKeyDown(KeyEventArgs e)
draggingTool.DoKeyDown(e)

处理复制模式和移动模式之间的切换,因为控制键被按下或释放.

e
DoKeyUp
public override void DoKeyUp(KeyEventArgs e)
draggingTool.DoKeyUp(e)

处理复制模式和移动模式之间的切换,因为控制键被按下或释放.

e
DoMouseMove
public override void DoMouseMove()
draggingTool.DoMouseMove()

当用户移动鼠标时,移动CopiedParts或DraggedParts的收藏,这取决于MayCopy或MayMove是否属实.

DoMouseUp
public override void DoMouseUp()
draggingTool.DoMouseUp()

鼠标上完成移动或复制有效选择。

DoQueryContinueDrag
public virtual void DoQueryContinueDrag(QueryContinueDragEventArgs e)
draggingTool.DoQueryContinueDrag(e)

如果用户点击了 ESBE 密钥, 请拨打 DoCancel 以中止此工具 。

e
DoStop
public override void DoStop()
draggingTool.DoStop()

拖行后完成清理.

DragOver
protected virtual void DragOver(Point pt, bool moving, bool copying)
draggingTool.DragOver(pt, moving, copying)

影响一些处于指定点以下的固定的未选对象,并考虑自动滚动.

pt
通常为当前鼠标点, 在模型坐标中
moving
copying
DropOnto
protected virtual void DropOnto(Point pt)
draggingTool.DropOnto(pt)

滴出后执行任何额外的副作用.

pt
FindDraggablePart
protected virtual Part FindDraggablePart()
result = draggingTool.FindDraggablePart()

在鼠标下行点返回可选择和可移动/可复制部分。

返回值: 如果此时没有可选择的部分,或者CanMove和CanCopy都是虚假的,则无效.

IsValidMember
public virtual bool IsValidMember(Group group, Node node)
result = draggingTool.IsValidMember(group, node)

要求这个上游用于确定是否可按点添加一个节点作为专家组成员.

group
如果将节点添加为顶级节点, 则此选项可能无效 。
node
a 节点,可能另组

返回值: 调用对象的结果)

MakeDragImage
protected virtual FrameworkElement MakeDragImage(Rect bounds)
result = draggingTool.MakeDragImage(bounds)

创建 IsRealtime 假冒时被拖曳的部件的表示 。

bounds
DraggedParts在模型坐标上的边界

返回值: FrameworkElement

MayAcceptData
public virtual bool MayAcceptData(IDataObject dataobj)
result = draggingTool.MayAcceptData(dataobj)

决定一个 IDataObject 是否适合复制到这个图表的模型中 。

dataobj
以 IDataObject+++为单位, 通常为 DragEventArgs.Data++++++的值 。

返回值: 默认情况下,此选项将检查数据对象是否在模型的DataFormat中拥有数据,或者在模型的GetNodeType中拥有数据.

MayCopy
protected virtual bool MayCopy()
result = draggingTool.MayCopy()

当视图允许对象被复制并被插入时,这个上游是真实的,而图中选择的一些对象是可复制的,用户正在按住控制键.

MayCopyExternal
protected virtual bool MayCopyExternal(DragEventArgs e)
result = draggingTool.MayCopyExternal(e)

如果用户可以在外部拖放上复制所选内容,则此上游是真实的.

e

返回值: AllowedEffects 不允许复制。 Shift 键修改器应用(尝试需要移动) 则不正确。 如果图 IsReadOnly 或者不是 AllowInsert 则不正确。 如果拖放开始于此控件, 拖放则不正确。 如果模型无法修改, 拖放数据则不正确。 如果模型没有拖放数据, 则不正确。 否则是真实的 。

MayCopyInternal
protected virtual bool MayCopyInternal(DragEventArgs e)
result = draggingTool.MayCopyInternal(e)

如果用户可以在内部拖放上复制选中内容, 此上游是真实的 。

e

返回值: AllowedEffects 不允许复制。 Shift 键修改器应用(尝试需要移动) 的假。 图表 IsReadOnly 或 不使用 AllowInsert 。 如果拖放来自另一个控制, 假的。 如果模型无法修改, 假的。 否则是真实的 。

MayMove
protected virtual bool MayMove()
result = draggingTool.MayMove()

当视图允许对象被移动时,这个上方是真实的,而"选择"中的一些对象是可移动的.

MayMoveExternal
protected virtual bool MayMoveExternal(DragEventArgs e)
result = draggingTool.MayMoveExternal(e)

如果用户可以在外部拖放上移动选择,则此上游是真实的。

e

返回值: AllowedEffects 不允许移动是虚假的。 Control 密钥修改器(尝试要求复制) 是不真实的。 如果图 IsReadOnly 或图 AllowInsert 或图中不包含 AllowInsert 。 如果拖放开始于此控制, 则不真实 。 如果模型无法修改, 则不真实 。 如果模型没有拖放数据, 则不真实 。 否则是真实的 。

MayMoveInternal
protected virtual bool MayMoveInternal(DragEventArgs e)
result = draggingTool.MayMoveInternal(e)

如果用户可以在内部拖放上移动选择,则此上游是真实的。

e

返回值: AllowedEffects 不允许移动, 如果应用控制键修改器(试图要求复制), 则不正确 。 如果图 IsReadOnly 或图 AllowMove 则不正确 。 如果拖放来自另一个控制, 则不正确 。 否则是真实的 。

MoveParts
public virtual void MoveParts(Dictionary<Part, Info> parts, Point offset)
draggingTool.MoveParts(parts, offset)

将一组部件由给定的平分移动。

parts
a 部分词典,已映射到包含节点原位置的 Info值
offset
a 模型坐标中的点值
SnapTo
protected virtual Point SnapTo(Node moving, Point pt, Node snapper, Dictionary<Part, Info> draggedparts)
result = draggingTool.SnapTo(moving, pt, snapper, draggedparts)

计算一个节点的新位置, 给另一个控制其移动的节点。

moving
正在拖取的节点
pt
将节点拖入的模型坐标点
snapper
节点,一般是一个网格,它正在控制拖曳的抓取
draggedparts
a 正在拖取的部件词典

返回值: 一个新的节点位置, 在模型坐标中

StandardMouseSelect
protected override void StandardMouseSelect()
draggingTool.StandardMouseSelect()

控制修改器不能取消选择已经选中的部分 。

字段

CopiesEffectiveCollectionProperty
public static readonly DependencyProperty CopiesEffectiveCollectionProperty
value = DraggingTool.CopiesEffectiveCollectionProperty

确定CopiesEffectiveCollection的受抚养财产。

DraggableLinksProperty
public static readonly DependencyProperty DraggableLinksProperty
value = DraggingTool.DraggableLinksProperty

确定DraggableLinks的受抚养财产。

DragOverSnapAreaProperty
public static readonly DependencyProperty DragOverSnapAreaProperty
value = DraggingTool.DragOverSnapAreaProperty

确定DragOverSnapArea的受抚养财产。

DropOntoEnabledProperty
public static readonly DependencyProperty DropOntoEnabledProperty
value = DraggingTool.DropOntoEnabledProperty

确定DropOntoEnabled的受抚养财产。

FromPortIdProperty
public static readonly DependencyProperty FromPortIdProperty
value = DraggingTool.FromPortIdProperty

确定FromPortId的受抚养财产。

InclusionsProperty
public static readonly DependencyProperty InclusionsProperty
value = DraggingTool.InclusionsProperty

确定包含依赖的财产。

IsRealtimeProperty
public static readonly DependencyProperty IsRealtimeProperty
value = DraggingTool.IsRealtimeProperty

确定IsRealtime的受抚养财产。

ToPortIdProperty
public static readonly DependencyProperty ToPortIdProperty
value = DraggingTool.ToPortIdProperty

确定ToPortId的受抚养财产。