Compartir a través de


MatchesCriteriaBaseCallback (Delegado)

Actualización: noviembre 2007

Representa una función que se usa para evaluar si un objeto ContextNodeBase cumple o no un criterio especificado.

Espacio de nombres:  System.Windows.Ink.AnalysisCore
Ensamblado:  IACore (en IACore.dll)

Sintaxis

'Declaración
Public Delegate Function MatchesCriteriaBaseCallback ( _
    visitingNode As ContextNodeBase, _
    data As Object _
) As Boolean
'Uso
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 no admite delegados.

Parámetros

  • data
    Tipo: System.Object
    Datos opcionales que se pueden usar para los criterios.

Valor devuelto

Tipo: System.Boolean
Valor booleano que indica si el objeto visitingNode coincide con los criterios.

Ejemplos

En el ejemplo siguiente se busca la colección de los objetos ContextNodeBase en InkAnalyzerBase, theInkAnalyzerBase, que satisface los criterios especificados en la función de delegado MatchesCriteriaBaseCallbackLineIsLowerThan usando un entero, 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 devuelve true si ContextNodeBase es de tipo Line y si la parte inferior del cuadro de límite es más bajo que un entero que se haya pasado. (Recuerde que los valores y más altos aparecen más bajos en la pantalla.) Por tanto, la colección nodesBelowYValue contiene todas las líneas cuyos trazos están por debajo del valor 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);

}

Plataformas

Windows Vista, Windows XP SP2, Windows Server 2003

.NET Framework y .NET Compact Framework no admiten todas las versiones de cada plataforma. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.

Información de versión

.NET Framework

Compatible con: 3.0

Vea también

Referencia

System.Windows.Ink.AnalysisCore (Espacio de nombres)

InkAnalyzer.FindNodes