Freigeben über


InkAnalyzerBase.Abort-Methode

Bricht den aktuellen Analysevorgang ab.

Namespace:  System.Windows.Ink.AnalysisCore
Assembly:  IACore (in IACore.dll)

Syntax

'Declaration
Public Function Abort As AnalysisRegionBase
'Usage
Dim instance As InkAnalyzerBase
Dim returnValue As AnalysisRegionBase

returnValue = instance.Abort()
public AnalysisRegionBase Abort()
public:
AnalysisRegionBase^ Abort()
public AnalysisRegionBase Abort()
public function Abort() : AnalysisRegionBase

Rückgabewert

Typ: System.Windows.Ink.AnalysisCore.AnalysisRegionBase
Der zu analysierende Bereich des aktuellen Analysevorgangs

Hinweise

Nachdem diese Methode aufgerufen wurde, hört InkAnalyzerBase auf, Ereignisse für den abgebrochenen Analysevorgang auszulösen. Wenn ein Hintergrundanalysevorgang abgebrochen wird, wird diese Methode asynchron ausgeführt, bis das Freihandanalysemodul den Vorgang beendet.

Wenn keine Analysevorgänge ausgeführt werden, gibt diese Methode einen leeren Analysebereich zurück.

Wenn ein Analysevorgang ausgeführt wird, bricht diese Methode den Vorgang ab.

Wenn sowohl synchrone als auch asynchrone Analysevorgänge ausgeführt werden, bricht diese Methode den synchronen Vorgang ab.

Wenn diese Methode mehr als einmal für denselben Analysevorgang aufgerufen wird, gibt der erste Aufruf den zu analysierenden Bereich für den Vorgang zurück, und nachfolgende Aufrufe geben einen leeren Bereich zurück.

Wenn Ihre Anwendung über eine eigene Datenstruktur verfügt, die mit der von InkAnalyzerBase synchronisiert wird, verfügt Ihr Dokument nach einem Aufruf von Abort möglicherweise nur über unvollständige Ergebnisse. Rufen Sie daher Abort nicht in der Zeit zwischen dem Aufruf des InkAnalyzerStateChangingBase-Ereignisses durch InkAnalyzerBase und dem Aufruf des IntermediateResultsUpdatedBase-Ereignisses oder ResultsUpdatedBase-Ereignisses durch InkAnalyzerBase auf.

Weitere Informationen zum Synchronisieren von Anwendungsdaten mit dem Freihandanalysemodul finden Sie unter Data Proxy with Ink Analysis.

Beispiele

In diesem Beispiel wird ein Ereignishandler für das ActivityBase-Ereignis des Freihandanalysemoduls definiert. Wenn der Analysevorgang abgebrochen werden muss, ruft der Ereignishandler Abort für den InkAnalyzerBase auf, der das Ereignis generiert hat, und aktualisiert die DirtyRegion-Eigenschaft des Analysemoduls.

''' <summary>
''' The ink analyzer's Activity event handler.
''' </summary>
''' <param name="sender">The source of the event.</param>
''' <param name="e">The event data.</param>
Sub theInkAnalyzerBase_Activity(ByVal sender As Object, ByVal e As EventArgs)

    Dim abortAnalysis As Boolean = False

    ' Check if the analysis operation should be canceled.

    ' Abort analysis if the flag to do so is set.
    If abortAnalysis Then
        ' Get the analyzer that raised the Activity event.
        Dim theInkAnalyzerBase As System.Windows.Ink.AnalysisCore.InkAnalyzerBase = _
            DirectCast(sender, System.Windows.Ink.AnalysisCore.InkAnalyzerBase)

        ' Abort the analysis and get the region that was being analyzed.
        Dim theAnalysisRegionBase As System.Windows.Ink.AnalysisCore.AnalysisRegionBase = _
            theInkAnalyzerBase.Abort()

        ' Add the region that was being analyzed to the analyzer's dirty region.
        theInkAnalyzerBase.DirtyRegion.Union(theAnalysisRegionBase)
    End If

End Sub 'theInkAnalyzerBase_Activity
/// <summary>
/// The ink analyzer's Activity event handler.
/// </summary>
/// <param name="sender">The source of the event.</param>
/// <param name="e">The event data.</param>
void theInkAnalyzerBase_Activity(object sender, EventArgs e)
{
    bool abortAnalysis = false;

    // Check if the analysis operation should be canceled.

    // Abort analysis if the flag to do so is set.
    if (abortAnalysis)
    {
        // Get the analyzer that raised the Activity event.
        System.Windows.Ink.AnalysisCore.InkAnalyzerBase theInkAnalyzerBase =
            sender as System.Windows.Ink.AnalysisCore.InkAnalyzerBase;

        // Abort the analysis and get the region that was being analyzed.
        System.Windows.Ink.AnalysisCore.AnalysisRegionBase theAnalysisRegionBase =
            theInkAnalyzerBase.Abort();

        // Add the region that was being analyzed to the analyzer's dirty region.
        theInkAnalyzerBase.DirtyRegion.Union(theAnalysisRegionBase);
    }
}

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

Siehe auch

Referenz

InkAnalyzerBase-Klasse

InkAnalyzerBase-Member

System.Windows.Ink.AnalysisCore-Namespace

InkAnalyzerBase.Analyze

InkAnalyzerBase.BackgroundAnalyze

InkAnalyzerBase.DirtyRegion