InkAnalyzer.Abort 方法
取消当前分析操作。
命名空间: Microsoft.Ink
程序集: Microsoft.Ink.Analysis(在 Microsoft.Ink.Analysis.dll 中)
语法
声明
Public Function Abort As AnalysisRegion
用法
Dim instance As InkAnalyzer
Dim returnValue As AnalysisRegion
returnValue = instance.Abort()
public AnalysisRegion Abort()
public:
AnalysisRegion^ Abort()
public AnalysisRegion Abort()
public function Abort() : AnalysisRegion
返回值
类型:Microsoft.Ink.AnalysisRegion
当前分析操作的已更新区域。
备注
调用此方法后,InkAnalyzer 停止为取消的分析操作引发事件。如果取消的是后台分析操作,则在 InkAnalyzer 停止该操作前,此方法异步运行。
如果没有在执行的分析操作,则 Abort 返回一个空的分析区域。
如果有一个分析操作正在执行,则 Abort 取消该操作。
如果同步分析操作和异步分析操作都在执行,则 Abort 取消同步操作。
如果为同一分析操作多次调用此方法,则首次调用返回该操作的已更新区域,后续调用返回空区域。
如果您的应用程序维护其自己的数据结构,该数据结构与 InkAnalyzer 的数据结构同步,则调用 Abort 可造成文档包含的结果不完整。若要避免此问题,请不要在 InkAnalyzer 引发 InkAnalyzerStateChanging 事件和 InkAnalyzer 引发 IntermediateResultsUpdated 或 ResultsUpdated 事件之间调用 Abort。
有关将应用程序数据与 InkAnalyzer 同步的更多信息,请参见Data Proxy with Ink Analysis。
示例
此示例为 InkAnalyzer.Activity 事件定义事件处理程序。如果需要取消分析操作,则该事件处理程序对生成该事件的 InkAnalyzer 调用 Abort,并更新 InkAnalyzer 对象的 DirtyRegion。
''' <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 Microsoft.Ink.InkAnalyzer = _
DirectCast(sender, Microsoft.Ink.InkAnalyzer)
' Abort the analysis and get the region that was being analyzed.
Dim theAnalysisRegion As Microsoft.Ink.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.
Microsoft.Ink.InkAnalyzer theInkAnalyzer =
sender as Microsoft.Ink.InkAnalyzer;
// Abort the analysis and get the region that was being analyzed.
Microsoft.Ink.AnalysisRegion theAnalysisRegion = theInkAnalyzer.Abort();
// Add the region that was being analyzed to the analyzer's dirty region.
theInkAnalyzer.DirtyRegion.Union(theAnalysisRegion);
}
}
平台
Windows Vista
.NET Framework 和 .NET Compact Framework 并不是对每个平台的所有版本都提供支持。有关支持的版本的列表,请参见.NET Framework 系统要求。
版本信息
.NET Framework
受以下版本支持:3.0