Share via


Delegato MatchesCriteriaBaseCallback

Aggiornamento: novembre 2007

Rappresenta una funzione utilizzata per valutare se un oggetto ContextNodeBase soddisfa o meno un criterio specificato.

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

Sintassi

'Dichiarazione
Public Delegate Function MatchesCriteriaBaseCallback ( _
    visitingNode As ContextNodeBase, _
    data As Object _
) As Boolean
'Utilizzo
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 non supporta i delegati.

Parametri

  • data
    Tipo: System.Object
    Dati facoltativi che possono essere utilizzati per i criteri.

Valore restituito

Tipo: System.Boolean
Valore booleano che indica se l'oggetto visitingNode soddisfa i criteri.

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 valore integer, 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);

LineIsLowerThan restituisce un valore true se 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. Pertanto, 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

Spazio dei nomi System.Windows.Ink.AnalysisCore

InkAnalyzer.FindNodes