ContextNodeCollection (Clase)
Actualización: noviembre 2007
Contiene una colección de objetos ContextNode que son el resultado de un análisis de entrada manuscrita.
Espacio de nombres: Microsoft.Ink
Ensamblado: Microsoft.Ink.Analysis (en Microsoft.Ink.Analysis.dll)
Sintaxis
'Declaración
Public Class ContextNodeCollection _
Implements ICollection, IEnumerable
'Uso
Dim instance As ContextNodeCollection
public class ContextNodeCollection : ICollection,
IEnumerable
public ref class ContextNodeCollection : ICollection,
IEnumerable
public class ContextNodeCollection implements ICollection,
IEnumerable
public class ContextNodeCollection implements ICollection, IEnumerable
Ejemplos
En el ejemplo siguiente se muestra cómo recorrer en bucle un objeto ContextNodeCollection desde el método InkAnalyzer. FindNodesOfType(ContextNodeType, ContextNode) de un objeto InkAnalyzer, theInkAnalyzer. En el ejemplo se recorren en bucle todos los nodos de línea y si hay presentes dos nodos de palabras de entradas manuscritas en la misma palabra, los marca en rojo.
' If two identical ink words occur next to each other, mark them as red.
' Note: This doesn't actually look for pairs that go across two lines.
Dim lines As ContextNodeCollection = _
theInkAnalyzer.FindNodesOfType(Microsoft.Ink.ContextNodeType.Line)
Dim lineNode As ContextNode
Dim stroke As Stroke
For Each lineNode In lines
Dim previousWord As InkWordNode = Nothing
Dim inkWord As InkWordNode
For Each inkWord In _
theInkAnalyzer.FindNodesOfType(Microsoft.Ink.ContextNodeType.InkWord, lineNode)
If Not (previousWord Is Nothing) AndAlso _
previousWord.GetRecognizedString() = inkWord.GetRecognizedString() Then
For Each stroke In previousWord.Strokes
stroke.DrawingAttributes = New DrawingAttributes(Color.Red)
Next stroke
For Each stroke In inkWord.Strokes
stroke.DrawingAttributes = New DrawingAttributes(Color.Red)
Next stroke
End If
previousWord = inkWord
Next inkWord
Next lineNode
// If two identical ink words occur next to each other, mark them as red.
// Note: This doesn't actually look for pairs that go across two lines.
ContextNodeCollection lines =
theInkAnalyzer.FindNodesOfType(Microsoft.Ink.ContextNodeType.Line);
foreach (ContextNode lineNode in lines)
{
InkWordNode previousWord = null;
foreach (InkWordNode inkWord in
theInkAnalyzer.FindNodesOfType(Microsoft.Ink.ContextNodeType.InkWord, lineNode))
{
if (previousWord != null &&
previousWord.GetRecognizedString() == inkWord.GetRecognizedString())
{
foreach (Stroke stroke in previousWord.Strokes)
stroke.DrawingAttributes = new DrawingAttributes(Color.Red);
foreach (Stroke stroke in inkWord.Strokes)
stroke.DrawingAttributes = new DrawingAttributes(Color.Red);
}
previousWord = inkWord;
}
}
Jerarquía de herencia
System.Object
Microsoft.Ink.ContextNodeCollection
Seguridad para subprocesos
Todos los miembros static (Shared en Visual Basic) públicos de este tipo son seguros para la ejecución de subprocesos. No se garantiza que los miembros de instancias sean seguros para la ejecución de subprocesos.
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
ContextNodeCollection (Miembros)
Microsoft.Ink (Espacio de nombres)
FindNodes(MatchesCriteriaCallBack, Object, ContextNode)