InkAnalyzer.Abort (Método)
Actualización: noviembre 2007
Cancela la operación de análisis actual.
Espacio de nombres: System.Windows.Ink
Ensamblado: IAWinFX (en IAWinFX.dll)
Sintaxis
'Declaración
Public Function Abort As AnalysisRegion
'Uso
Dim instance As InkAnalyzer
Dim returnValue As AnalysisRegion
returnValue = instance.Abort()
public AnalysisRegion Abort()
public:
AnalysisRegion^ Abort()
public AnalysisRegion Abort()
public function Abort() : AnalysisRegion
Valor devuelto
Tipo: System.Windows.Ink.AnalysisRegion
La región modificada de la operación de análisis actual.
Comentarios
InkAnalyzer deja de provocar eventos para la operación de análisis cancelada cuando se llama a este método. Si se cancela una operación de análisis en segundo plano, este método se ejecuta de forma asincrónica hasta que InkAnalyzer detiene la operación. Es importante tener en cuenta las condiciones siguientes:
Si no hay ninguna operación de análisis en curso, el método Abort devuelve una región de análisis vacía.
Si hay una operación de análisis en curso, el método Abort cancela la operación.
Si hay operaciones de análisis sincrónicas y asincrónicas en curso, el método Abort cancela la operación síncrona.
Si se llama a este método más de una vez para la misma operación de análisis, la primera llamada devuelve la región modificada de la operación y las llamadas subsiguientes devuelven una región vacía.
Si la aplicación mantiene una estructura de datos propia que está sincronizada con la de InkAnalyzer, al llamar a Abort se pueden generar documentos que sólo contienen resultados parciales. Para evitar resultados parciales, no llame a Abort desde que InkAnalyzer provoca el evento InkAnalyzerStateChanging hasta que InkAnalyzer provoca el evento IntermediateResults() o Results().
Para obtener más información sobre la sincronización entre los datos de la aplicación y InkAnalyzer, vea Data Proxy with Ink Analysis.
Ejemplos
En este ejemplo se define un controlador del evento InkAnalyzer.Activity. Si se debe cancelar la operación de análisis, el controlador de eventos llama al método Abort en el objeto InkAnalyzer que generó el evento, actualizando así la propiedad DirtyRegion del objeto InkAnalyzer.
' <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 theInkAnalyzer_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 InkAnalyzer that raised the Activity event.
Dim theInkAnalyzer As InkAnalyzer = sender
' Abort the analysis and get the region that was being analyzed.
Dim theAnalysisRegion As AnalysisRegion = theInkAnalyzer.Abort()
' Add the region that was being analyzed to the analyzer's dirty region.
theInkAnalyzer.DirtyRegion.Union(theAnalysisRegion)
End If
End Sub 'theInkAnalyzer_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 theInkAnalyzer_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 InkAnalyzer that raised the Activity event.
InkAnalyzer theInkAnalyzer =
sender as InkAnalyzer;
// Abort the analysis and get the region that was being analyzed.
AnalysisRegion theAnalysisRegion = theInkAnalyzer.Abort();
// Add the region that was being analyzed to the analyzer's dirty region.
theInkAnalyzer.DirtyRegion.Union(theAnalysisRegion);
}
}
Plataformas
Windows Vista
.NET Framework y .NET Compact Framework no admiten todas las versiones de cada plataforma. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.
Información de versión
.NET Framework
Compatible con: 3.0
Vea también
Referencia
System.Windows.Ink (Espacio de nombres)
InkAnalyzerBaseBackgroundAnalyze()