InkAnalyzer.FindNodes (Método) (MatchesCriteriaCallback, Object, ContextNode)
Actualización: noviembre 2007
Devuelve los objetos ContextNode que son descendientes del objeto ContextNode especificado y que coinciden con los criterios especificados.
Espacio de nombres: Microsoft.Ink
Ensamblado: Microsoft.Ink.Analysis (en Microsoft.Ink.Analysis.dll)
Sintaxis
'Declaración
Public Function FindNodes ( _
criteria As MatchesCriteriaCallback, _
data As Object, _
nodeToSearch As ContextNode _
) As ContextNodeCollection
'Uso
Dim instance As InkAnalyzer
Dim criteria As MatchesCriteriaCallback
Dim data As Object
Dim nodeToSearch As ContextNode
Dim returnValue As ContextNodeCollection
returnValue = instance.FindNodes(criteria, _
data, nodeToSearch)
public ContextNodeCollection FindNodes(
MatchesCriteriaCallback criteria,
Object data,
ContextNode nodeToSearch
)
public:
ContextNodeCollection^ FindNodes(
MatchesCriteriaCallback^ criteria,
Object^ data,
ContextNode^ nodeToSearch
)
public ContextNodeCollection FindNodes(
MatchesCriteriaCallback criteria,
Object data,
ContextNode nodeToSearch
)
public function FindNodes(
criteria : MatchesCriteriaCallback,
data : Object,
nodeToSearch : ContextNode
) : ContextNodeCollection
Parámetros
- criteria
Tipo: Microsoft.Ink.MatchesCriteriaCallback
Función de delegado que determina si un objeto ContextNode cumple o no sus criterios especificados.
- data
Tipo: System.Object
Datos adicionales opcionales que se pueden pasar en la función delegada. Este método pasa estos datos al delegado con cada llamada y no los modifica ni examina.
- nodeToSearch
Tipo: Microsoft.Ink.ContextNode
Objeto ContextNode cuyos descendientes se buscan.
Valor devuelto
Tipo: Microsoft.Ink.ContextNodeCollection
Objeto ContextNodeCollection que contiene todos los objetos ContextNode que son descendientes del nodo especificado y que coinciden con los criterios especificados.
Ejemplos
En el ejemplo siguiente se busca la colección de objetos ContextNode de un objeto InkAnalyzer, theInkAnalyzer, que satisface los criterios especificados en el delegado LineIsLowerThan. El entero de 32 bits con signo, yValue, se pasa al delegado LineIsLowerThan. La búsqueda se restringe a los descendientes del objeto WritingRegionNode, writingRegion.
Dim isLineLowerThanCallback As _
New Microsoft.Ink.MatchesCriteriaCallback(AddressOf LineIsLowerThan)
Dim nodesInRegionBelowYValue As ContextNodeCollection = _
theInkAnalyzer.FindNodes(isLineLowerThanCallback, yValue, writingRegion)
Microsoft.Ink.MatchesCriteriaCallback
isLineLowerThanCallback = new Microsoft.Ink.MatchesCriteriaCallback(LineIsLowerThan);
ContextNodeCollection nodesInRegionBelowYValue =
theInkAnalyzer.FindNodes(isLineLowerThanCallback, yValue, writingRegion);
En el ejemplo siguiente se define el método LineIsLowerThan, que devuelve true si ContextNode es un objeto LineNode y si la parte inferior del cuadro de límite es inferior al entero que se pasa. (Observe que valores altos en la coordenada Y corresponden a valores 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