This documentation is archived and is not being maintained.
ContextNode.Type Property
Visual Studio 2008
Gets the context node type for this ContextNode object.
Assembly: Microsoft.Ink.Analysis (in Microsoft.Ink.Analysis.dll)
See the ContextNodeType class for the type GUID values.
The following example shows how to use the Type property of a ContextNode object, selectedNode. The text of a TextBox, selectedResultsTextBox, is filled differently depending on the type of node. In most cases, the recognized string is used, but for InkWord, the line's recognized string is used, and the word is selected in the TextBox.
Select Case selectedNode.Type Case Microsoft.Ink.ContextNodeType.WritingRegion Dim writingRegion As WritingRegionNode = _ CType(selectedNode, WritingRegionNode) selectedResultsTextBox.Text = writingRegion.GetRecognizedString() Case Microsoft.Ink.ContextNodeType.Paragraph Dim paragraph As ParagraphNode = _ CType(selectedNode, ParagraphNode) selectedResultsTextBox.Text = paragraph.GetRecognizedString() Case Microsoft.Ink.ContextNodeType.Line Dim line As LineNode = _ CType(selectedNode, LineNode) selectedResultsTextBox.Text = line.GetRecognizedString() Case Microsoft.Ink.ContextNodeType.InkWord Dim inkWord As InkWordNode = _ CType(selectedNode, InkWordNode) Dim parentNode As ContextNode = inkWord.ParentNode If TypeOf parentNode Is LineNode Then Dim parentLine As LineNode = CType(parentNode, LineNode) ' Put parent line's recognized string into the text box selectedResultsTextBox.Text = parentLine.GetRecognizedString() ' Select the text that corresponds to the ink word Dim subNodes As New ContextNodeCollection(theInkAnalyzer) subNodes.Add(inkWord) Dim start As Integer Dim length As Integer parentLine.GetTextRangeFromNodes(subNodes, start, length) If start >= 0 AndAlso length > 0 Then selectedResultsTextBox.Select(start, length) End If End If ' Show the time stamp If inkWord.ContainsPropertyData(Me.timeStampGuid) Then Dim timeStamp As DateTime = _ CType(inkWord.GetPropertyData(Me.timeStampGuid), DateTime) timeStampLabel.Text = timeStamp.ToShortTimeString() End If ' Snippet to demonstrate GetPropertyDataIds Dim propertyDataIds() As Guid = inkWord.GetPropertyDataIds() ' Snippets to demonstrate loading and saving Dim data As Byte() = inkWord.SavePropertiesData() If (Not inkWord.LoadPropertiesData(data)) Then MessageBox.Show("Cannot load property data") End If Case Microsoft.Ink.ContextNodeType.InkDrawing Dim drawingNode As InkDrawingNode = CType(selectedNode, InkDrawingNode) selectedResultsTextBox.Text = drawingNode.GetShapeName() Case Microsoft.Ink.ContextNodeType.InkBullet Dim bulletNode As InkBulletNode = CType(selectedNode, InkBulletNode) selectedResultsTextBox.Text = bulletNode.GetRecognizedString() Case Microsoft.Ink.ContextNodeType.Object Dim selectedObject As ObjectNode = selectedNode selectedResultsTextBox.Text = selectedObject.GetRecognizedString() Case Microsoft.Ink.ContextNodeType.CustomRecognizer Dim customRecognizer As CustomRecognizerNode = selectedNode selectedResultsTextBox.Text = customRecognizer.GetRecognizedString() Case Else selectedResultsTextBox.Text = String.Empty End Select
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.
Show: