Share via


MatchesCriteriaCallback (Delegado)

Actualización: noviembre 2007

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

Espacio de nombres:  Microsoft.Ink
Ensamblado:  Microsoft.Ink.Analysis (en Microsoft.Ink.Analysis.dll)

Sintaxis

'Declaración
Public Delegate Function MatchesCriteriaCallback ( _
    visitingNode As ContextNode, _
    data As Object _
) As Boolean
'Uso
Dim instance As New MatchesCriteriaCallback(AddressOf HandlerMethod)
public delegate bool MatchesCriteriaCallback(
    ContextNode visitingNode,
    Object data
)
public delegate bool MatchesCriteriaCallback(
    ContextNode^ visitingNode, 
    Object^ data
)
/** @delegate */
public delegate boolean MatchesCriteriaCallback(
    ContextNode 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
Si el objeto visitingNode satisface los criterios.

Ejemplos

En el ejemplo siguiente se busca la colección de los objetos ContextNode en InkAnalyzer, theInkAnalyzer, que satisface los criterios especificados en la función de delegado MatchesCriteriaCallBackLineIsLowerThan usando un entero, yValue.

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

LineIsLowerThan devuelve true si ContextNode es LineNode 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 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);
        }

Plataformas

Windows Vista

.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

Microsoft.Ink (Espacio de nombres)

InkAnalyzer.FindNodes