Condividi tramite


Metodo InkAnalyzerBase.FindNodes (MatchesCriteriaBaseCallback, Object)

Aggiornamento: novembre 2007

Restituisce tutti gli oggetti ContextNodeBase che corrispondono ai criteri specificati.

Spazio dei nomi:  System.Windows.Ink.AnalysisCore
Assembly:  IACore (in IACore.dll)

Sintassi

'Dichiarazione
Public Function FindNodes ( _
    criteria As MatchesCriteriaBaseCallback, _
    data As Object _
) As ContextNodeBaseCollection
'Utilizzo
Dim instance As InkAnalyzerBase
Dim criteria As MatchesCriteriaBaseCallback
Dim data As Object
Dim returnValue As ContextNodeBaseCollection

returnValue = instance.FindNodes(criteria, _
    data)
public ContextNodeBaseCollection FindNodes(
    MatchesCriteriaBaseCallback criteria,
    Object data
)
public:
ContextNodeBaseCollection^ FindNodes(
    MatchesCriteriaBaseCallback^ criteria, 
    Object^ data
)
public ContextNodeBaseCollection FindNodes(
    MatchesCriteriaBaseCallback criteria,
    Object data
)
public function FindNodes(
    criteria : MatchesCriteriaBaseCallback, 
    data : Object
) : ContextNodeBaseCollection

Parametri

  • data
    Tipo: System.Object
    Dati aggiuntivi facoltativi che possono essere passati nella funzione del delegato. Il metodo passa questi dati al delegato in ogni chiamata, senza modificarli né esaminarli.

Valore restituito

Tipo: System.Windows.Ink.AnalysisCore.ContextNodeBaseCollection
Oggetto ContextNodeBaseCollection contenente tutti gli oggetti ContextNodeBase che corrispondono ai criteri specificati.

Esempi

Nell'esempio seguente viene individuato l'insieme di oggetti ContextNodeBase in un oggetto InkAnalyzerBase, theInkAnalyzerBase, che soddisfa i criteri specificati nella funzione di delegato MatchesCriteriaBaseCallback, LineIsLowerThan, tramite un numero intero, yValue.

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);

Nell'esempio seguente viene definito il metodo LineIsLowerThan, che restituisce true se l'oggetto ContextNodeBase è di tipo Line e se la parte inferiore del riquadro è minore del valore integer passato. È opportuno ricordare che i valori della coordinata y più elevati corrispondono a valori più bassi sullo schermo. Di conseguenza, l'insieme nodesBelowYValue contiene tutte le righe con i tratti al di sotto del valore, 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);

}

Piattaforme

Windows Vista, Windows XP SP2, Windows Server 2003

.NET Framework e .NET Compact Framework non supportano tutte le versioni di ciascuna piattaforma. Per un elenco delle versioni supportate, vedere Requisiti di sistema di .NET Framework.

Informazioni sulla versione

.NET Framework

Supportato in: 3.0

Vedere anche

Riferimenti

InkAnalyzerBase Classe

Membri InkAnalyzerBase

Overload FindNodes

Spazio dei nomi System.Windows.Ink.AnalysisCore