ContextNode.SubNodes Property
Gets the direct children of the ContextNode object.
Namespace: Microsoft.Ink
Assembly: Microsoft.Ink.Analysis (in Microsoft.Ink.Analysis.dll)
Syntax
'Declaration
Public ReadOnly Property SubNodes As ContextNodeCollection
'Usage
Dim instance As ContextNode
Dim value As ContextNodeCollection
value = instance.SubNodes
public ContextNodeCollection SubNodes { get; }
public:
property ContextNodeCollection^ SubNodes {
ContextNodeCollection^ get ();
}
public function get SubNodes () : ContextNodeCollection
Property Value
Type: Microsoft.Ink.ContextNodeCollection
The direct children of the ContextNode object.
Remarks
This returns only the direct children, not all of the descendants.
Examples
This example is a method that recursively traverses a tree of ContextNode objects. It uses the SubNodes property and populates a System.Windows.Forms.TreeView by adding TreeNode objects. It then sets their Text properties to GetRecognizedString.
Private Sub WalkTree(ByVal parentContextNode As Microsoft.Ink.ContextNode, _
ByVal parentTreeNode As TreeNode)
Dim cNode As ContextNode
For Each cNode In parentContextNode.SubNodes
Dim newTNode As New TreeNode(cNode.ToString())
If TypeOf cNode Is Microsoft.Ink.InkWordNode Then
newTNode.Text = newTNode.Text + _
": " + CType(cNode, InkWordNode).GetRecognizedString()
ElseIf TypeOf cNode Is Microsoft.Ink.InkDrawingNode Then
Dim shapeName As String = CType(cNode, InkDrawingNode).GetShapeName()
If shapeName <> "" Then
newTNode.Text = newTNode.Text + ": " + shapeName
End If
End If
WalkTree(cNode, newTNode)
parentTreeNode.Nodes.Add(newTNode)
' Add the context node as a tag of the tree node
newTNode.Tag = cNode
Next cNode
End Sub 'WalkTree
private void WalkTree(ContextNode parentContextNode, TreeNode parentTreeNode)
{
foreach (ContextNode cNode in parentContextNode.SubNodes)
{
TreeNode newTNode = new TreeNode(cNode.ToString());
if (cNode is Microsoft.Ink.InkWordNode)
{
newTNode.Text +=
": " + ((InkWordNode)cNode).GetRecognizedString();
}
else if (cNode is Microsoft.Ink.InkDrawingNode)
{
String shapeName = ((InkDrawingNode)cNode).GetShapeName();
if (shapeName != "")
newTNode.Text += ": " + shapeName;
}
WalkTree(cNode, newTNode);
parentTreeNode.Nodes.Add(newTNode);
// Add the context node as a tag of the tree node
newTNode.Tag = cNode;
}
}
Platforms
Windows 7, Windows Vista, Windows Server 2008 R2, Windows Server 2008
The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Version Information
.NET Framework
Supported in: 3.0