Partager via


InkAnalyzerBase.Abort, méthode

Mise à jour : November 2007

Annule l'opération d'analyse en cours.

Espace de noms :  System.Windows.Ink.AnalysisCore
Assembly :  IACore (dans IACore.dll)

Syntaxe

'Déclaration
Public Function Abort As AnalysisRegionBase
'Utilisation
Dim instance As InkAnalyzerBase
Dim returnValue As AnalysisRegionBase

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

Valeur de retour

Type : System.Windows.Ink.AnalysisCore.AnalysisRegionBase
Région modifiée pour l'opération d'analyse en cours.

Notes

Une fois cette méthode appelée, le InkAnalyzerBase cesse de déclencher des événements pour l'opération d'analyse annulée. Si une opération d'analyse d'arrière-plan est annulée, cette méthode s'exécute de manière asynchrone jusqu'à ce que l'analyseur d'entrée manuscrite arrête l'opération.

Si aucune opération d'analyse n'est en cours, cette méthode retourne une région d'analyse vide.

Si une opération d'analyse est en cours, cette méthode annule l'opération.

Si des opérations d'analyse synchrone et asynchrone sont en cours, cette méthode annule l'opération synchrone.

Si cette méthode est appelée plusieurs fois pour la même opération d'analyse, le premier appel retourne la région modifiée pour l'opération et les appels suivants retournent une région vide.

Si votre application gère sa propre structure de données, synchronisée avec celle de InkAnalyzerBase, l'appel à Abort peut générer des résultats partiels sur votre document. Pour éviter cela, n'appelez pas Abort entre le moment où InkAnalyzerBase déclenche l'événement InkAnalyzerStateChangingBase et où InkAnalyzerBase déclenche l'événement IntermediateResultsUpdatedBase ou ResultsUpdatedBase.

Pour plus d'informations sur la synchronisation des données d'application avec l'analyseur d'entrée manuscrite, consultez Data Proxy with Ink Analysis.

Exemples

Cet exemple définit un gestionnaire d'événements pour l'événement ActivityBase de l'analyseur d'entrée manuscrite. Si l'opération d'analyse doit être annulée, le gestionnaire d'événements appelle Abort sur le InkAnalyzerBase qui a généré l'événement et met à jour la propriété DirtyRegion de l'analyseur.

''' <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);
    }
}

Plateformes

Windows Vista, Windows XP SP2, Windows Server 2003

Le .NET Framework et le .NET Compact Framework ne prennent pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.

Informations de version

.NET Framework

Pris en charge dans : 3.0

Voir aussi

Référence

InkAnalyzerBase, classe

Membres InkAnalyzerBase

System.Windows.Ink.AnalysisCore, espace de noms

InkAnalyzerBase.Analyze

InkAnalyzerBase.BackgroundAnalyze

InkAnalyzerBase.DirtyRegion