Metodo InkAnalyzer.FindNodes (MatchesCriteriaCallback, Object, ContextNode)
Aggiornamento: novembre 2007
Restituisce gli oggetti ContextNode che sono discendenti dell'oggetto ContextNode specificato e che corrispondono ai criteri specificati.
Spazio dei nomi: Microsoft.Ink
Assembly: Microsoft.Ink.Analysis (in Microsoft.Ink.Analysis.dll)
Sintassi
'Dichiarazione
Public Function FindNodes ( _
criteria As MatchesCriteriaCallback, _
data As Object, _
nodeToSearch As ContextNode _
) As ContextNodeCollection
'Utilizzo
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
Parametri
- criteria
Tipo: Microsoft.Ink.MatchesCriteriaCallback
Funzione del delegato che determina se un oggetto ContextNode soddisfa o meno i criteri specificati.
- data
Tipo: System.Object
Dati aggiuntivi facoltativi che possono essere passati nella funzione del delegato. Il metodo passa questi dati al delegato in ogni chiamata, senza modificarli né esaminarli.
- nodeToSearch
Tipo: Microsoft.Ink.ContextNode
Oggetto ContextNode con i discendenti cercati.
Valore restituito
Tipo: Microsoft.Ink.ContextNodeCollection
Oggetto ContextNodeCollection contenente tutti gli oggetti ContextNode che sono discendenti del nodo specificato e che corrispondono ai criteri specificati.
Esempi
Nell'esempio seguente viene individuato l'insieme di oggetti ContextNode in un oggetto InkAnalyzer, theInkAnalyzer che soddisfa i criteri specificati nel delegato LineIsLowerThan. Il valore integer con segno a 32 bit, yValue, viene passato al delegato LineIsLowerThan. La ricerca viene limitata ai discendenti dell'oggetto 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);
Nell'esempio seguente viene definito il metodo LineIsLowerThan, che restituisce true se l'oggetto ContextNode è un oggetto LineNode e se la parte inferiore del riquadro è minore del valore integer passato. Si noti che valori della coordinata Y più elevati equivalgono 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 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);
}
Piattaforme
Windows Vista
.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