InkAnalyzer.FindNodes-Methode (MatchesCriteriaCallback, Object, ContextNode)
Gibt eine ContextNodeCollection mit allen ContextNode-Objekten zurück, die Nachfolger des angegebenen ContextNode sind und die angegebenen Kriterien erfüllen.
Namespace: System.Windows.Ink
Assembly: IAWinFX (in IAWinFX.dll)
Syntax
'Declaration
Public Function FindNodes ( _
criteria As MatchesCriteriaCallback, _
data As Object, _
nodeToSearch As ContextNode _
) As ContextNodeCollection
'Usage
Dim instance As InkAnalyzer
Dim criteria As MatchesCriteriaCallback
Dim data As Object
Dim nodeToSearch As ContextNode
Dim returnValue As ContextNodeCollection
returnValue = instance.FindNodes(criteria, _
data, nodeToSearch)
public ContextNodeCollection FindNodes(
MatchesCriteriaCallback criteria,
Object data,
ContextNode nodeToSearch
)
public:
ContextNodeCollection^ FindNodes(
MatchesCriteriaCallback^ criteria,
Object^ data,
ContextNode^ nodeToSearch
)
public ContextNodeCollection FindNodes(
MatchesCriteriaCallback criteria,
Object data,
ContextNode nodeToSearch
)
public function FindNodes(
criteria : MatchesCriteriaCallback,
data : Object,
nodeToSearch : ContextNode
) : ContextNodeCollection
Parameter
- criteria
Typ: System.Windows.Ink.MatchesCriteriaCallback
- data
Typ: System.Object
- nodeToSearch
Typ: System.Windows.Ink.ContextNode
Der ContextNode, dessen Nachfolger durchsucht werden.
Rückgabewert
Typ: System.Windows.Ink.ContextNodeCollection
Eine ContextNodeCollection mit allen ContextNode-Objekten, die Nachfolger des angegebenen Knotens sind und die angegebenen Kriterien erfüllen.
Beispiele
Im folgenden Beispiel wird die Auflistung von ContextNode-Objekten in einem InkAnalyzer namens theInkAnalyzer ermittelt, die den im LineIsLowerThan-Delegaten angegebenen Kriterien entsprechen. Die 32-Bit-Ganzzahl mit Vorzeichen yValue wird an den LineIsLowerThan-Delegaten übergeben. Die Suche wird auf die Nachfolger des WritingRegionNode mit dem Namen writingRegion beschränkt.
Dim isLineLowerThanCallback As New MatchesCriteriaCallback(AddressOf LineIsLowerThan)
Dim nodesInRegionBelowYValue As ContextNodeCollection = _
theInkAnalyzer.FindNodes(isLineLowerThanCallback, yValue, writingRegion)
MatchesCriteriaCallback
isLineLowerThanCallback = new MatchesCriteriaCallback(LineIsLowerThan);
ContextNodeCollection nodesInRegionBelowYValue =
theInkAnalyzer.FindNodes(isLineLowerThanCallback, yValue, writingRegion);
Im folgenden Beispiel wird die LineIsLowerThan-Methode definiert, die true zurückgibt, wenn der ContextNode ein [T:System.Windows.Ink.LineNode,] ist und der untere Rand des umgebenden Felds niedriger ist als die Ganzzahl, die an die Methode übergeben wird. (Beachten Sie, dass Koordinaten in Beziehung zur oberen linken Ecke des Fensters angegeben werden, d. h. je weiter Sie sich nach unten bewegen, desto höher wird der Wert der y-Koordinate). Daher enthält die nodesBelowYValue-Auflistung alle Linien mit Strichen unter dem Wert yValue.
Public Function LineIsLowerThan(ByVal node As ContextNode, ByVal data As Object) As Boolean
' Return false if not a line
If Not TypeOf node Is LineNode Then
Return False
End If
' Check if bottom is lower than yValue passed in
Dim yValue As Double = System.Convert.ToDouble(data)
Return node.Location.GetBounds().Bottom > yValue
End Function 'LineIsLowerThan
public bool LineIsLowerThan(ContextNode node, object data)
{
// Return false if not a line
if (!(node is LineNode))
return false;
// Check if bottom is lower than yValue passed in
double yValue = (double)data;
return (node.Location.GetBounds().Bottom > yValue);
}
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