ContextNodeTypeBase-Klasse
Definiert Werte, die den Typ des ContextNode-Objekts angeben.
Namespace: System.Windows.Ink.AnalysisCore
Assembly: IACore (in IACore.dll)
Syntax
'Declaration
Public NotInheritable Class ContextNodeTypeBase
'Usage
Dim instance As ContextNodeTypeBase
public sealed class ContextNodeTypeBase
public ref class ContextNodeTypeBase sealed
public final class ContextNodeTypeBase
public final class ContextNodeTypeBase
Hinweise
Die ContextNodeBase.Type-Eigenschaft und die InkAnalyzerBase.FindNodesOfType-Methode verwenden häufig die Felder dieser Klasse.
Beispiele
In diesem Beispiel wird die Text-Eigenschaft des TextBox-Objekts selectedResultsTextBox, auf eine passende Zeichenfolge für einen ContextNodeBase, selectedNode festgelegt. Das Beispiel verwendet die Type-Eigenschaft, um abhängig vom Typ des ContextNodeBase-Objekts die Art des anzuzeigenden Texts auszuwählen.
If (selectedNode.ContainsPropertyData(PropertyGuidsForContextNodesBase.RecognizedString) AndAlso _
(selectedNode.Type = System.Windows.Ink.AnalysisCore.ContextNodeTypeBase.WritingRegion OrElse _
selectedNode.Type = System.Windows.Ink.AnalysisCore.ContextNodeTypeBase.Paragraph OrElse _
selectedNode.Type = System.Windows.Ink.AnalysisCore.ContextNodeTypeBase.CustomRecognizer OrElse _
selectedNode.Type = System.Windows.Ink.AnalysisCore.ContextNodeTypeBase.Object OrElse _
selectedNode.Type = System.Windows.Ink.AnalysisCore.ContextNodeTypeBase.Line)) Then
selectedResultsTextBox.Text = _
CType(selectedNode.GetPropertyData(PropertyGuidsForContextNodesBase.RecognizedString), String)
ElseIf (selectedNode.Type = System.Windows.Ink.AnalysisCore.ContextNodeTypeBase.InkWord) Then
Dim parentNode As ContextNodeBase = selectedNode.ParentNode
If (parentNode.Type = System.Windows.Ink.AnalysisCore.ContextNodeTypeBase.Line AndAlso _
parentNode.ContainsPropertyData(PropertyGuidsForContextNodesBase.RecognizedString)) Then
' Put parent line's recognized string into the text box
selectedResultsTextBox.Text = _
CType(parentNode.GetPropertyData(PropertyGuidsForContextNodesBase.RecognizedString), String)
' Select the text that corresponds to the ink word
Dim subNodes As New ContextNodeBaseCollection(theInkAnalyzerBase)
subNodes.Add(selectedNode)
Dim start As Integer
Dim length As Integer
theInkAnalyzerBase.GetTextRangeFromNodes(subNodes, start, length)
If (start >= 0 AndAlso length > 0) Then
selectedResultsTextBox.Select(start, length)
End If
End If
ElseIf (selectedNode.Type = System.Windows.Ink.AnalysisCore.ContextNodeTypeBase.InkDrawing AndAlso _
selectedNode.ContainsPropertyData(PropertyGuidsForContextNodesBase.ShapeName)) Then
selectedResultsTextBox.Text = _
CType(selectedNode.GetPropertyData(PropertyGuidsForContextNodesBase.ShapeName), String)
End If
if (selectedNode.ContainsPropertyData(PropertyGuidsForContextNodesBase.RecognizedString) &&
(selectedNode.Type == System.Windows.Ink.AnalysisCore.ContextNodeTypeBase.WritingRegion ||
selectedNode.Type == System.Windows.Ink.AnalysisCore.ContextNodeTypeBase.Paragraph ||
selectedNode.Type == System.Windows.Ink.AnalysisCore.ContextNodeTypeBase.CustomRecognizer ||
selectedNode.Type == System.Windows.Ink.AnalysisCore.ContextNodeTypeBase.Object ||
selectedNode.Type == System.Windows.Ink.AnalysisCore.ContextNodeTypeBase.Line))
{
selectedResultsTextBox.Text =
(string)selectedNode.GetPropertyData(PropertyGuidsForContextNodesBase.RecognizedString);
}
else if (selectedNode.Type == System.Windows.Ink.AnalysisCore.ContextNodeTypeBase.InkWord)
{
ContextNodeBase parentNode = selectedNode.ParentNode;
if (parentNode.Type == System.Windows.Ink.AnalysisCore.ContextNodeTypeBase.Line &&
parentNode.ContainsPropertyData(PropertyGuidsForContextNodesBase.RecognizedString))
{
// Put parent line's recognized string into the text box
selectedResultsTextBox.Text =
(string)parentNode.GetPropertyData(PropertyGuidsForContextNodesBase.RecognizedString);
// Select the text that corresponds to the ink word
ContextNodeBaseCollection subNodes = new ContextNodeBaseCollection(theInkAnalyzerBase);
subNodes.Add(selectedNode);
int start;
int length;
theInkAnalyzerBase.GetTextRangeFromNodes(subNodes, out start, out length);
if (start >= 0 && length > 0)
{
selectedResultsTextBox.Select(start, length);
}
}
}
else if (selectedNode.Type == System.Windows.Ink.AnalysisCore.ContextNodeTypeBase.InkDrawing &&
selectedNode.ContainsPropertyData(PropertyGuidsForContextNodesBase.ShapeName))
{
selectedResultsTextBox.Text =
(string)selectedNode.GetPropertyData(PropertyGuidsForContextNodesBase.ShapeName);
}
Vererbungshierarchie
System.Object
System.Windows.Ink.AnalysisCore.ContextNodeTypeBase
Threadsicherheit
Alle öffentlichen static (Shared in Visual Basic)-Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.
Plattformen
Windows Vista, Windows XP SP2, Windows Server 2003
.NET Framework und .NET Compact Framework unterstützen nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.
Versionsinformationen
.NET Framework
Unterstützt in: 3.0