Partager via


MatchesCriteriaBaseCallback, délégué

Mise à jour : November 2007

Représente une fonction permettant d'évaluer si un objet ContextNodeBase répond ou non à un critère spécifié.

Espace de noms :  System.Windows.Ink.AnalysisCore
Assembly :  IACore (dans IACore.dll)

Syntaxe

'Déclaration
Public Delegate Function MatchesCriteriaBaseCallback ( _
    visitingNode As ContextNodeBase, _
    data As Object _
) As Boolean
'Utilisation
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 ne prend pas en charge les délégués.

Paramètres

  • data
    Type : System.Object
    Données facultatives qui peuvent être utilisées en tant que critères.

Valeur de retour

Type : System.Boolean
Valeur booléenne qui indique si l'objet visitingNode correspond au critère.

Exemples

L'exemple suivant recherche la collection d'objets ContextNodeBase dans un InkAnalyzerBase, theInkAnalyzerBase, qui répond aux critères spécifiés dans la fonction déléguée LineIsLowerThan de MatchesCriteriaBaseCallback à l'aide d'un entier, 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 retourne la valeur true si le ContextNodeBase est de type Line et si le bas du cadre englobant est inférieur à un entier qui est passé (notez que plus la valeur de la coordonnée y est élevée, plus l'affichage à l'écran est bas). Par conséquent, la collection nodesBelowYValue contient toutes les lignes dont les traits sont situés sous la valeur, 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);

}

Plateformes

Windows Vista, Windows XP SP2, Windows Server 2003

Le .NET Framework et le .NET Compact Framework ne prennent pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.

Informations de version

.NET Framework

Pris en charge dans : 3.0

Voir aussi

Référence

System.Windows.Ink.AnalysisCore, espace de noms

InkAnalyzer.FindNodes