다음을 통해 공유


InkAnalyzer.FindNodes 메서드 (MatchesCriteriaCallback, Object, ContextNode)

업데이트: 2007년 11월

지정된 ContextNode의 하위 항목이며 지정된 조건에 일치하는 ContextNode 개체가 들어 있는 ContextNodeCollection을 반환합니다.

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

구문

‘선언
Public Function FindNodes ( _
    criteria As MatchesCriteriaCallback, _
    data As Object, _
    nodeToSearch As ContextNode _
) As ContextNodeCollection
‘사용 방법
Dim instance As InkAnalyzer
Dim criteria As MatchesCriteriaCallback
Dim data As Object
Dim nodeToSearch As ContextNode
Dim returnValue As ContextNodeCollection

returnValue = instance.FindNodes(criteria, _
    data, nodeToSearch)
public ContextNodeCollection FindNodes(
    MatchesCriteriaCallback criteria,
    Object data,
    ContextNode nodeToSearch
)
public:
ContextNodeCollection^ FindNodes(
    MatchesCriteriaCallback^ criteria, 
    Object^ data, 
    ContextNode^ nodeToSearch
)
public ContextNodeCollection FindNodes(
    MatchesCriteriaCallback criteria,
    Object data,
    ContextNode nodeToSearch
)
public function FindNodes(
    criteria : MatchesCriteriaCallback, 
    data : Object, 
    nodeToSearch : ContextNode
) : ContextNodeCollection

매개 변수

반환 값

형식: System.Windows.Ink.ContextNodeCollection
지정된 노드의 하위 항목이며 지정된 조건에 일치하는 ContextNode 개체가 모두 들어 있는 ContextNodeCollection입니다.

예제

다음 예제에서는 LineIsLowerThan 대리자에 지정된 조건을 충족하는 theInkAnalyzer라는 InkAnalyzer에서 ContextNode 개체의 컬렉션을 찾습니다. 부호 있는 32비트 정수인 yValue가 LineIsLowerThan 대리자에 전달됩니다. 검색은 writingRegion라는 WritingRegionNode의 하위 항목으로 한정됩니다.

Dim isLineLowerThanCallback As New MatchesCriteriaCallback(AddressOf LineIsLowerThan)
Dim nodesInRegionBelowYValue As ContextNodeCollection = _
    theInkAnalyzer.FindNodes(isLineLowerThanCallback, yValue, writingRegion)
MatchesCriteriaCallback
    isLineLowerThanCallback = new MatchesCriteriaCallback(LineIsLowerThan);
ContextNodeCollection nodesInRegionBelowYValue =
    theInkAnalyzer.FindNodes(isLineLowerThanCallback, yValue, writingRegion);

다음 예제에서는 ContextNodeLineNode이고 경계 상자의 아래쪽이 전달된 정수보다 낮은 경우 true를 반환하는 LineIsLowerThan 메서드를 정의합니다. 좌표는 창의 왼쪽 위 모퉁이에 상대적으로 표현됩니다. 아래쪽으로 이동할수록 Y 좌표가 높아집니다. 따라서 nodesBelowYValue 컬렉션에는 yValue 값보다 낮은 스트로크가 있는 모든 줄이 들어 있습니다.

Public Function LineIsLowerThan(ByVal node As ContextNode, ByVal data As Object) As Boolean 
    ' Return false if not a line
    If Not TypeOf node Is LineNode Then
        Return False
    End If 
    ' Check if bottom is lower than yValue passed in
    Dim yValue As Double = System.Convert.ToDouble(data)
    Return node.Location.GetBounds().Bottom > yValue

End Function 'LineIsLowerThan
public bool LineIsLowerThan(ContextNode node, object data)
{
    // Return false if not a line
    if (!(node is LineNode))
        return false;

    // Check if bottom is lower than yValue passed in
    double yValue = (double)data;
    return (node.Location.GetBounds().Bottom > yValue);
}

플랫폼

Windows Vista

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

버전 정보

.NET Framework

3.0에서 지원

참고 항목

참조

InkAnalyzer 클래스

InkAnalyzer 멤버

FindNodes 오버로드

System.Windows.Ink 네임스페이스

InkAnalyzer.FindInkLeafNodes

InkAnalyzer.FindLeafNodes

InkAnalyzer.FindNode

InkAnalyzer.FindNodes

InkAnalyzer.FindNodesOfType