LineNode.GetNodesFromTextRange-Methode (Int32%, Int32%)
Gibt eine Auflistung von ContextNode-Nachfolgerobjekten zurück, die sich auf den angegebenen Textbereich in der erkannten Zeichenfolge beziehen.
Namespace: System.Windows.Ink
Assembly: IAWinFX (in IAWinFX.dll)
Syntax
'Declaration
Public Function GetNodesFromTextRange ( _
ByRef start As Integer, _
ByRef length As Integer _
) As ContextNodeCollection
'Usage
Dim instance As LineNode
Dim start As Integer
Dim length As Integer
Dim returnValue As ContextNodeCollection
returnValue = instance.GetNodesFromTextRange(start, _
length)
public ContextNodeCollection GetNodesFromTextRange(
ref int start,
ref int length
)
public:
ContextNodeCollection^ GetNodesFromTextRange(
int% start,
int% length
)
public ContextNodeCollection GetNodesFromTextRange(
/** @ref */int start,
/** @ref */int length
)
public function GetNodesFromTextRange(
start : int,
length : int
) : ContextNodeCollection
Parameter
- start
Typ: System.Int32%
Der Anfang des Textbereichs in der erkannten Zeichenfolge.
- length
Typ: System.Int32%
Die Länge des Textbereichs in der erkannten Zeichenfolge.
Rückgabewert
Typ: System.Windows.Ink.ContextNodeCollection
Die Auflistung von ContextNode-Nachfolgerobjekten, die sich auf den angegebenen Textbereich in der erkannten Zeichenfolge beziehen.
Hinweise
Der Textbereich sollte relativ zur erkannten Zeichenfolge des aktuellen LineNode und nicht relativ zur erkannten Zeichenfolge des gesamten RootNode angegeben werden.
Der start-Parameter und der length-Parameter sind Verweise, da ihre Werte geändert werden können. Wenn beispielsweise der Rückgabewert von GetRecognizedString "I am late" ist und Sie die Werte start = 6 und length = 1 übergeben, was dem Buchstaben "a" entspricht, enthält die ContextNodeCollection wahrscheinlich nur einen ContextNode, nämlich den InkWordNode, der dem Wort "late" entspricht. In diesem Fall werden der Wert von start in 5 und der Wert von length in 4 geändert, was dem gesamten Word "late" entspricht.
Beispiele
Im folgenden Beispiel wird eine TextBox, selectedResultsTextBox, erfasst, deren Text-Eigenschaft, die zuvor festgelegt wurde, anhand des Werts, der von GetRecognizedString für eine LineNode mit dem Namen line zurückgegeben wurde. Der Benutzer hat Text in der [System.Windows.Controls.TextBox] ausgewählt. Im Beispielcode wird die Auswahl erfasst, und die Strokes werden markiert, die dieser Auswahl entsprechen.
' Find out what's been selected in the text box
Dim start As Integer = selectedResultsTextBox.SelectionStart
Dim length As Integer = selectedResultsTextBox.SelectionLength
' Return if no text is selected.
If length = 0 Then
Return
End If
' Get the nodes that correspond to that range
Dim selectedNodes As ContextNodeCollection = _
line.GetNodesFromTextRange(start, length)
' Use the new start and length value to update the
' selection in the TextBox
selectedResultsTextBox.SelectionStart = start
selectedResultsTextBox.SelectionLength = length
' Color the strokes red if part of the selected words.
' Otherwise, color them black.
For Each node As ContextNode In line.SubNodes
For Each stroke As Stroke In node.Strokes
If selectedNodes.Contains(node) Then
stroke.DrawingAttributes.Color = Colors.Red
Else
stroke.DrawingAttributes.Color = Colors.Black
End If
Next stroke
Next node
// Find out what's been selected in the text box
int start = selectedResultsTextBox.SelectionStart;
int length = selectedResultsTextBox.SelectionLength;
// Return if no text is selected.
if (length == 0)
return;
// Get the nodes that correspond to that range
ContextNodeCollection selectedNodes =
line.GetNodesFromTextRange(ref start, ref length);
// Use the new start and length value to update the
// selection in the TextBox
selectedResultsTextBox.SelectionStart = start;
selectedResultsTextBox.SelectionLength = length;
// Color the strokes red if part of the selected words.
// Otherwise, color them black.
foreach (ContextNode node in line.SubNodes)
{
foreach (Stroke stroke in node.Strokes)
{
if (selectedNodes.Contains(node))
{
stroke.DrawingAttributes.Color = Colors.Red;
}
else
{
stroke.DrawingAttributes.Color = Colors.Black;
}
}
}
Plattformen
Windows Vista
.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