Freigeben über


InkAnalyzer.FindNodes-Methode (MatchesCriteriaCallback, Object, ContextNode)

Gibt die ContextNode-Objekte zurück, die Nachfolger des angegebenen ContextNode sind und zu den angegebenen Kriterien passen.

Namespace:  Microsoft.Ink
Assembly:  Microsoft.Ink.Analysis (in Microsoft.Ink.Analysis.dll)

Syntax

'Declaration
Public Function FindNodes ( _
    criteria As MatchesCriteriaCallback, _
    data As Object, _
    nodeToSearch As ContextNode _
) As ContextNodeCollection
'Usage
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

Parameter

  • data
    Typ: System.Object
    Optionale zusätzliche Daten, die an die Delegatfunktion übergeben werden können. Diese Methode übergibt bei jedem Aufruf diese Daten an den Delegaten, ohne sie zu ändern oder zu überprüfen.

Rückgabewert

Typ: Microsoft.Ink.ContextNodeCollection
Eine ContextNodeCollection, die alle ContextNode-Objekte enthält, die Nachfolger des angegebenen Knotens sind und die angegebenen Kriterien erfüllen.

Beispiele

Im folgenden Beispiel wird die Auflistung von ContextNode-Objekten in einem InkAnalyzer, theInkAnalyzer, ermittelt, die den im LineIsLowerThan-Delegaten angegebenen Kriterien entsprechen. Die 32-Bit-Ganzzahl mit Vorzeichen yValue wird an den LineIsLowerThan-Delegaten übergeben. Die Suche wird auf die Nachfolger von WritingRegionNode, writingRegion, beschränkt.

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

Im folgenden Beispiel wird dieLineIsLowerThan-Methode definiert, die true zurückgibt, wenn ContextNode ein LineNode ist und der untere Rand des umgebenden Felds unter einer übergebenen Ganzzahl liegt. (Hinweis: Höhere y-Koordinatenwerte bedeuten eine niedrigere Bildschirmposition.) Daher enthält die nodesBelowYValue-Auflistung alle Linien mit Strichen unter dem Wert yValue.

Public Function LineIsLowerThan(ByVal node As Microsoft.Ink.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 Integer = Fix(data)
    Return node.Location.GetBounds().Bottom > yValue

End Function 'LineIsLowerThan

        public bool LineIsLowerThan(Microsoft.Ink.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
            int yValue = (int)data;
            return (node.Location.GetBounds().Bottom > yValue);
        }

Plattformen

Windows Vista

.NET Framework und .NET Compact Framework unterstützen nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.

Versionsinformationen

.NET Framework

Unterstützt in: 3.0

Siehe auch

Referenz

InkAnalyzer-Klasse

InkAnalyzer-Member

FindNodes-Überladung

Microsoft.Ink-Namespace

InkAnalyzer.FindInkLeafNodes

InkAnalyzer.FindLeafNodes

InkAnalyzer.FindNode

InkAnalyzer.FindNodes

InkAnalyzer.FindNodesOfType