다음을 통해 공유


MatchesCriteriaBaseCallback 대리자

업데이트: 2007년 11월

ContextNodeBase 개체가 지정된 조건을 충족하는지 여부를 확인하는 데 사용되는 함수를 나타냅니다.

네임스페이스:  System.Windows.Ink.AnalysisCore
어셈블리:  IACore(IACore.dll)

구문

‘선언
Public Delegate Function MatchesCriteriaBaseCallback ( _
    visitingNode As ContextNodeBase, _
    data As Object _
) As Boolean
‘사용 방법
Dim instance As New MatchesCriteriaBaseCallback(AddressOf HandlerMethod)
public delegate bool MatchesCriteriaBaseCallback(
    ContextNodeBase visitingNode,
    Object data
)
public delegate bool MatchesCriteriaBaseCallback(
    ContextNodeBase^ visitingNode, 
    Object^ data
)
/** @delegate */
public delegate boolean MatchesCriteriaBaseCallback(
    ContextNodeBase visitingNode,
    Object data
)
JScript에서는 대리자를 지원하지 않습니다.

매개 변수

  • data
    형식: System.Object
    조건으로 사용할 수 있는 선택적 데이터입니다.

반환 값

형식: System.Boolean
visitingNode 개체가 조건을 충족하는지 여부를 나타내는 부울 값입니다.

예제

다음 예제에서는 정수 yValue를 사용하여 InkAnalyzerBase인 theInkAnalyzerBase에서 MatchesCriteriaBaseCallback 대리자 함수 LineIsLowerThan에 지정된 조건을 충족하는 ContextNodeBase 개체의 컬렉션을 찾습니다.

Dim lineIsLowerThanCallback As _
    New System.Windows.Ink.AnalysisCore.MatchesCriteriaBaseCallback(AddressOf LineIsLowerThan)
Dim nodesBelowYValue As ContextNodeBaseCollection = _
    theInkAnalyzerBase.FindNodes(lineIsLowerThanCallback, yValue)
System.Windows.Ink.AnalysisCore.MatchesCriteriaBaseCallback
    lineIsLowerThanCallback = new System.Windows.Ink.AnalysisCore.MatchesCriteriaBaseCallback(LineIsLowerThan);
ContextNodeBaseCollection nodesBelowYValue =
    theInkAnalyzerBase.FindNodes(lineIsLowerThanCallback, yValue);

ContextNodeBaseLine 형식이고 경계 상자의 아래쪽이 전달된 정수보다 낮으면 LineIsLowerThan은 true를 반환합니다. 여기서 y 값이 클수록 화면에서 아래쪽에 나타납니다. 따라서 nodesBelowYValue 컬렉션에는 yValue 값보다 낮은 스트로크가 있는 모든 줄이 들어 있습니다.

Public Function LineIsLowerThan( _
    ByVal nodeBase As System.Windows.Ink.AnalysisCore.ContextNodeBase, _
    ByVal data As Object) As Boolean

    ' Return false if not a line
    If nodeBase.Type <> System.Windows.Ink.AnalysisCore.ContextNodeTypeBase.Line Then
        Return False
    End If
    ' Check if bottom is lower than yValue passed in
    Dim yValue As Integer = Fix(data)
    Return nodeBase.Location.GetBounds()(3) > yValue

End Function 'LineIsLowerThan
public bool LineIsLowerThan(System.Windows.Ink.AnalysisCore.ContextNodeBase nodeBase, object data)
{
    // Return false if not a line
    if (!(nodeBase.Type == System.Windows.Ink.AnalysisCore.ContextNodeTypeBase.Line))
        return false;

    // Check if bottom is lower than yValue passed in
    int yValue = (int)data;
    return (nodeBase.Location.GetBounds()[3] > yValue);

}

플랫폼

Windows Vista, Windows XP SP2, Windows Server 2003

.NET Framework 및 .NET Compact Framework에서 모든 플랫폼의 전체 버전을 지원하지는 않습니다. 지원되는 버전의 목록을 보려면 .NET Framework 시스템 요구 사항을 참조하십시오.

버전 정보

.NET Framework

3.0에서 지원

참고 항목

참조

System.Windows.Ink.AnalysisCore 네임스페이스

InkAnalyzer.FindNodes