DiagramTool
这个抽象工具类是所有被预先定义的工具的标准基类.
继承自: FrameworkElement
实现: IDiagramTool
属性
public bool Active { get; set; }
value = diagramTool.Active
diagramTool.Active = value
获取或设定此工具是否启动并正在积极做一些事情 。
public Diagram Diagram { get; set; }
value = diagramTool.Diagram
diagramTool.Diagram = value
获取拥有此工具的图表, 而此工具正在处理输入事件 。
public bool MouseEnabled { get; set; }
value = diagramTool.MouseEnabled
diagramTool.MouseEnabled = value
获取或设定此工具是否可以由鼠标事件启动 。
protected string TransactionResult { get; set; }
value = diagramTool.TransactionResult
diagramTool.TransactionResult = value
获取或设置要执行的交易的名称; 如果无效, 交易将被回滚 。
public WheelBehavior WheelBehavior { get; set; }
value = diagramTool.WheelBehavior
diagramTool.WheelBehavior = value
获取或设定 StandardMouseWheel 的行为 。
方法
public virtual bool CanStart()
result = diagramTool.CanStart()
此上游被图用于决定此工具是否可以启动 。
返回值: 如果 MouseEnabled 是真的, 如果 ToolManager 可以使这个工具成为当前工具, 然后调用 DoStart 方法
protected virtual void CaptureMouse()
diagramTool.CaptureMouse()
这叫UIElement.CaptureMouse 在图板的小组。
public virtual void DoActivate()
diagramTool.DoActivate()
这种方法在设置 CurrentTool 后被图名所使用, 以使新工具生效 。
public virtual void DoDeactivate()
diagramTool.DoDeactivate()
这种方法被旧工具上被图所取用,当CurrentTool被设定为新工具时.
public virtual void DoKeyDown(KeyEventArgs e)
diagramTool.DoKeyDown(e)
图表将在一个密钥下调事件时调用此方法 。
protected FrameworkElement FindAdornedElement(FrameworkElement handle)
result = diagramTool.FindAdornedElement(handle)
将一个手柄元素放在一幅花饰中, 返回其花饰的 AdornedElement 。
- handle
- 国家
返回值: 内有装饰的部位,而不是内有装饰的部位
protected Part FindAdornedPart(FrameworkElement handle)
result = diagramTool.FindAdornedPart(handle)
将一个手柄元素放在一幅花饰中, 返回其花饰的 AdornedPart 。
- handle
- 国家
返回值: a 部分不是装饰
protected Adornment FindAdornment(FrameworkElement handle)
result = diagramTool.FindAdornment(handle)
给它一个手柄元素, 返回它包含的 Adornment 。
- handle
- 国家
返回值: 包含的 Adornment(可能是上下几个视觉级别)或无效,如果元素不属于 Adornment
protected virtual FrameworkElement FindElementUpFrom(FrameworkElement elt, Func<FrameworkElement, bool?> pred, Predicate<FrameworkElement> valid)
result = diagramTool.FindElementUpFrom(elt, pred, valid)
搜索从给定元素开始的视觉母元素链条,以找到一个有真实和真实的元素.
- elt
- 国家
- pred
- 当此上游并两者都是真的时, 返回该元素, 当此上游为假时, 返回无效。 否则会继续上到父链。 到达 Part 时请停止上到视觉父链 。
- valid
- 元素必须真实的上游,才能用这种方法返回
protected virtual FrameworkElement FindElementUpFrom(FrameworkElement elt, Predicate<FrameworkElement> pred)
result = diagramTool.FindElementUpFrom(elt, pred)
搜索从给定元素开始的父视觉元素链以找到一个真实的元素
- elt
- 国家
- pred
- 当此上游对元素是真实的, 请返回该元素。 当该上游对元素是虚假的, 请继续上到视觉母链。 到达 Part 时, 停止上到视觉母链 。
返回值: 如果没有找到此元素, 则无效
protected virtual Part FindPartAt(Point p, bool selectable)
result = diagramTool.FindPartAt(p, selectable)
在指定点找到一个部分, 也许需要它可以选择 。
- p
- a 模型坐标中的点
- selectable
- 如果选中此部分为真, 则必须选择该部分; 否则任何部分都会执行
返回值: 的第一(最前端)部分; 部分可以是节点或链接,包括临时的节点,如Adornments。
protected virtual FrameworkElement FindToolHandleAt(Point p, string category)
result = diagramTool.FindToolHandleAt(p, category)
在给定点找到一个元素,即工具控件。
- p
- a 模型坐标中的点
- category
- 手柄的广告类别
protected virtual int GetWheelDelta()
result = diagramTool.GetWheelDelta()
复以转法轮所起多相.
返回值: 如果鼠标上一个事件是鼠标向前转动, 则返回正整数。 如果鼠标上一个事件是鼠标向后转动, 则返回负整数。 否则, 它返回为零 。
protected virtual bool IsAltKeyDown()
result = diagramTool.IsAltKeyDown()
按下 ALT 键修饰符时返回真 。
protected virtual bool IsBeyondDragSize()
result = diagramTool.IsBeyondDragSize()
当鼠标上一个点距离第一个鼠标下下点足够远,足以构成拖动操作而不是仅仅潜在点击时返回正则.
返回值: 如果鼠标的第一和第二个点在任一轴上相差超过两个像素,则选中此值
protected virtual bool IsControlKeyDown()
result = diagramTool.IsControlKeyDown()
按下控件键修饰符时返回正则 。
protected virtual bool IsDoubleClick()
result = diagramTool.IsDoubleClick()
当鼠标下线事件发生于鼠标下线事件非常接近时,返回真实性, 并且是在鼠标下线事件发生后不久 。
protected virtual bool IsLeftButtonDown()
result = diagramTool.IsLeftButtonDown()
当鼠标按钮事件时按下鼠标左键时返回真实值 。
protected virtual bool IsRightButtonDown()
result = diagramTool.IsRightButtonDown()
当鼠标按钮事件期间按下鼠标右键时返回真实值 。
protected virtual bool IsShiftKeyDown()
result = diagramTool.IsShiftKeyDown()
键按下调制器时返回正则 。
protected bool RaiseEvent(RoutedEvent evt, DiagramEventArgs args)
result = diagramTool.RaiseEvent(evt, args)
Raise a RoutedEvent on the Diagram.
- evt
- 国家
- args
- 国家
返回值: 如果事件被提起,而得到处理,那确是真实的。
protected virtual void ReleaseMouse()
diagramTool.ReleaseMouse()
这叫UIElement.ReleaseMouseCapture 在图板的小组。
protected virtual void StandardMouseSelect()
diagramTool.StandardMouseSelect()
执行标准行为,以选择与鼠标相伴的部件,这取决于控制和移位修改键。
protected virtual void StandardMouseWheel()
diagramTool.StandardMouseWheel()
执行鼠标轮事件的标准行为 。
protected virtual bool StartTransaction(string tname)
result = diagramTool.StartTransaction(tname)
调用字符串),并带有给定的交易名.
- tname
public void StopTool()
diagramTool.StopTool()
如果 CurrentTool 是这个工具, 请停止此工具, 并启动 DefaultTool, 让它成为新的当前工具 。
protected virtual bool StopTransaction()
result = diagramTool.StopTransaction()
如果 TransactionResult 为无效,请打电话 RollbackTransaction, 否则就叫 String 。
返回值: 要求撤回或进行交易的结果
public virtual void UpdateAdornments(Part part)
diagramTool.UpdateAdornments(part)
图表要求每个工具更新工具可能用于某个特定部分的任何外观。
- part
字段
public static readonly DependencyProperty MouseEnabledProperty
value = DiagramTool.MouseEnabledProperty
确定MouseEnabled的受抚养财产。
public static readonly DependencyProperty WheelBehaviorProperty
value = DiagramTool.WheelBehaviorProperty
Identifies the WheelBehavior property.