ShapeElement.GetPotentialMouseAction 方法
在关系图获取鼠标事件为中的一个按下鼠标事件执行特定点。
命名空间: Microsoft.VisualStudio.Modeling.Diagrams
程序集: Microsoft.VisualStudio.Modeling.Sdk.Diagrams.11.0(在 Microsoft.VisualStudio.Modeling.Sdk.Diagrams.11.0.dll 中)
语法
声明
Public Overridable Function GetPotentialMouseAction ( _
mouseButtons As MouseButtons, _
point As PointD, _
hitTestInfo As DiagramHitTestInfo _
) As MouseAction
public virtual MouseAction GetPotentialMouseAction(
MouseButtons mouseButtons,
PointD point,
DiagramHitTestInfo hitTestInfo
)
参数
- mouseButtons
类型:System.Windows.Forms.MouseButtons
可能导致按下鼠标事件的鼠标按钮。
- point
类型:Microsoft.VisualStudio.Modeling.Diagrams.PointD
在关系图的点,相对于左上角点关系图。
- hitTestInfo
类型:Microsoft.VisualStudio.Modeling.Diagrams.DiagramHitTestInfo
命中测试信息。
返回值
类型:Microsoft.VisualStudio.Modeling.Diagrams.MouseAction
执行的鼠标事件为中的一个按下鼠标事件在关系图特定点。
示例
public override DslDiagrams::MouseAction GetPotentialMouseAction(System.Windows.Forms.MouseButtons mouseButtons, DslDiagrams.PointD point, DslDiagrams::DiagramHitTestInfo hitTestInfo)
{
DslDiagrams::LinkShape linkShape = hitTestInfo.HitDiagramItem.Shape as DslDiagrams::LinkShape;
DslDiagrams::AnchorPoint anchorPoint = hitTestInfo.HitDiagramItem.AnchorPoint;
DslDiagrams::MouseAction action = null;
if ((linkShape != null) && (hitTestInfo.DiagramClientView.Selection.Count == 1) &&
(anchorPoint != null))
{
action = this.SequenceDiagram.AnchorKeyPointAction;
}
else if ((mouseButtons == MouseButtons.Left || mouseButtons == MouseButtons.None) &&
(linkShape != null) && (hitTestInfo.DiagramClientView.Selection.Count == 1) &&
(hitTestInfo.DiagramClientView.Selection.PrimaryItem.Shape is LinkShape) &&
(hitTestInfo.DiagramClientView.Selection.PrimaryItem.Shape == linkShape) &&
(hitTestInfo.DiagramClientView.Selection.FocusedItem != null) &&
(hitTestInfo.DiagramClientView.Selection.FocusedItem.Shape == linkShape))
{
action = this.SequenceDiagram.AnchorKeyPointAction;
}
else
{
action = base.GetPotentialMouseAction(mouseButtons, point, hitTestInfo);
}
return action;
}
return action;
}
.NET Framework 安全性
- 对直接调用方的完全信任。此成员不能由部分信任的代码使用。有关更多信息,请参见通过部分受信任的代码使用库。