ShapeElement.DoHitTest 方法 (PointD, DiagramHitTestInfo, Boolean)
因此,如果指定的点在形状内,则返回 true。
命名空间: Microsoft.VisualStudio.Modeling.Diagrams
程序集: Microsoft.VisualStudio.Modeling.Sdk.Diagrams.11.0(在 Microsoft.VisualStudio.Modeling.Sdk.Diagrams.11.0.dll 中)
语法
声明
Public Overridable Function DoHitTest ( _
point As PointD, _
hitTestInfo As DiagramHitTestInfo, _
includeTolerance As Boolean _
) As Boolean
public virtual bool DoHitTest(
PointD point,
DiagramHitTestInfo hitTestInfo,
bool includeTolerance
)
参数
- point
类型:Microsoft.VisualStudio.Modeling.Diagrams.PointD
在关系图的点,相对于父形状。
- hitTestInfo
类型:Microsoft.VisualStudio.Modeling.Diagrams.DiagramHitTestInfo
将接收的对象命中测试的结果,显示哪个子形状或字段被命中。
- includeTolerance
类型:System.Boolean
,当命中测试执行期间,则为 true 在形状周围包括边界区域;否则,错误。
返回值
类型:System.Boolean
,如果形状命中了,则为 true;否则,错误。
备注
如果方法返回 true, hitTestInfo 指示实际上被命中,可能是形状的子 DiagramItem。
而不是调用此直接从命令,请考虑重写 OnClick() 或 OnDoubleClick(), HitTestInfo 在事件参数中。
示例
public override global::System.Windows.Forms.Cursor GetCursor(global::System.Windows.Forms.Cursor currentCursor, DslDiagrams::DiagramClientView diagramClientView, DslDiagrams::PointD mousePosition)
{
if (this.MouseDownHitShape == null && currentCursor != global::System.Windows.Forms.Cursors.No)
{
DslDiagrams::DiagramHitTestInfo hitTestInfo = new DslDiagrams::DiagramHitTestInfo(diagramClientView);
this.Diagram.DoHitTest(mousePosition, hitTestInfo);
DslDiagrams::ShapeElement shape = hitTestInfo.HitDiagramItem.Shape;
}
return base.GetCursor(currentCursor, diagramClientView, mousePosition);
}
.NET Framework 安全性
- 对直接调用方的完全信任。此成员不能由部分信任的代码使用。有关更多信息,请参见通过部分受信任的代码使用库。