InkAnalyzerBase.FindNodes-Methode (MatchesCriteriaBaseCallback, Object)
Gibt alle ContextNodeBase-Objekte zurück, die den angegebenen Kriterien entsprechen.
Namespace: System.Windows.Ink.AnalysisCore
Assembly: IACore (in IACore.dll)
Syntax
'Declaration
Public Function FindNodes ( _
criteria As MatchesCriteriaBaseCallback, _
data As Object _
) As ContextNodeBaseCollection
'Usage
Dim instance As InkAnalyzerBase
Dim criteria As MatchesCriteriaBaseCallback
Dim data As Object
Dim returnValue As ContextNodeBaseCollection
returnValue = instance.FindNodes(criteria, _
data)
public ContextNodeBaseCollection FindNodes(
MatchesCriteriaBaseCallback criteria,
Object data
)
public:
ContextNodeBaseCollection^ FindNodes(
MatchesCriteriaBaseCallback^ criteria,
Object^ data
)
public ContextNodeBaseCollection FindNodes(
MatchesCriteriaBaseCallback criteria,
Object data
)
public function FindNodes(
criteria : MatchesCriteriaBaseCallback,
data : Object
) : ContextNodeBaseCollection
Parameter
- criteria
Typ: System.Windows.Ink.AnalysisCore.MatchesCriteriaBaseCallback
Eine Delegatfunktion, mit der ermittelt wird, ob ein ContextNodeBase-Objekt den angegebene Kriterien entspricht oder nicht entspricht.
- data
Typ: System.Object
Optionale zusätzliche Daten, die an die Delegatfunktion übergeben werden können. Diese Methode übergibt bei jedem Aufruf diese Daten an den Delegaten, ohne sie zu ändern oder zu überprüfen.
Rückgabewert
Typ: System.Windows.Ink.AnalysisCore.ContextNodeBaseCollection
Eine ContextNodeBaseCollection, die alle ContextNodeBase-Objekte enthält, die den angegebenen Kriterien entsprechen.
Beispiele
Im folgenden Beispiel wird die Auflistung von ContextNodeBase-Objekten in einem InkAnalyzerBase mit dem Namen theInkAnalyzerBase gesucht, die den in der MatchesCriteriaBaseCallback-Delegatfunktion LineIsLowerThan festgelegten Kriterien entspricht. Die Suche erfolgt mithilfe einer Ganzzahl, yValue.
Dim lineIsLowerThanCallback As _
New System.Windows.Ink.AnalysisCore.MatchesCriteriaBaseCallback(AddressOf LineIsLowerThan)
Dim nodesBelowYValue As ContextNodeBaseCollection = _
theInkAnalyzerBase.FindNodes(lineIsLowerThanCallback, yValue)
System.Windows.Ink.AnalysisCore.MatchesCriteriaBaseCallback
lineIsLowerThanCallback = new System.Windows.Ink.AnalysisCore.MatchesCriteriaBaseCallback(LineIsLowerThan);
ContextNodeBaseCollection nodesBelowYValue =
theInkAnalyzerBase.FindNodes(lineIsLowerThanCallback, yValue);
Im folgenden Beispiel wird die LineIsLowerThan-Methode definiert, die true zurückgibt, wenn ContextNodeBase vom Typ Line ist, und wenn der untere Rand des umgebenden Felds unter einer übergebenen Ganzzahl liegt. (Beachten Sie, dass höhere y-Koordinatenwerte auf dem Bildschirm niedriger angezeigt werden.) Daher enthält die nodesBelowYValue-Auflistung alle Linien mit Strichen unter dem Wert yValue.
Public Function LineIsLowerThan( _
ByVal nodeBase As System.Windows.Ink.AnalysisCore.ContextNodeBase, _
ByVal data As Object) As Boolean
' Return false if not a line
If nodeBase.Type <> System.Windows.Ink.AnalysisCore.ContextNodeTypeBase.Line Then
Return False
End If
' Check if bottom is lower than yValue passed in
Dim yValue As Integer = Fix(data)
Return nodeBase.Location.GetBounds()(3) > yValue
End Function 'LineIsLowerThan
public bool LineIsLowerThan(System.Windows.Ink.AnalysisCore.ContextNodeBase nodeBase, object data)
{
// Return false if not a line
if (!(nodeBase.Type == System.Windows.Ink.AnalysisCore.ContextNodeTypeBase.Line))
return false;
// Check if bottom is lower than yValue passed in
int yValue = (int)data;
return (nodeBase.Location.GetBounds()[3] > yValue);
}
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