共用方式為


InkAnalyzerBase.Abort 方法

取消目前的分析作業。

命名空間:  System.Windows.Ink.AnalysisCore
組件:  IACore (在 IACore.dll 中)

語法

'宣告
Public Function Abort As AnalysisRegionBase
'用途
Dim instance As InkAnalyzerBase
Dim returnValue As AnalysisRegionBase

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

傳回值

型別:System.Windows.Ink.AnalysisCore.AnalysisRegionBase
目前分析作業的廢棄區域。

備註

呼叫這個方法之後,InkAnalyzerBase 會停止對取消的分析作業引發事件。如果背景分析作業已取消,則這個方法會以非同步方式執行,直到筆墨分析器停止該作業為止。

如果目前未進行任何分析作業,則這個方法會傳回空的分析區域。

如果有一項分析作業正在進行,則這個方法會取消該作業。

如果同步和非同步分析作業正同時進行,則這個方法會取消同步作業。

如果對相同的分析作業多次呼叫這個方法,則第一個呼叫會傳回作業的廢棄區域,後續呼叫則傳回空白區域。

如果您的應用程式自行維護與 InkAnalyzerBase 的資料結構同步處理的資料結構,則呼叫 Abort 可能會在文件中留下不完整的結果。為避免發生這種情況,請不要在 InkAnalyzerBase 引發 InkAnalyzerStateChangingBase 事件和 InkAnalyzerBase 引發 IntermediateResultsUpdatedBaseResultsUpdatedBase 事件之間呼叫 Abort。

如需將應用程式資料與筆墨分析器同步處理的詳細資訊,請參閱Data Proxy with Ink Analysis

範例

這個範例會定義筆墨分析器之 ActivityBase 事件的事件處理常式。如果需要取消分析作業,則事件處理常式會在產生該事件的 InkAnalyzerBase 上呼叫 Abort,並且更新分析器的 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 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);
    }
}

平台

Windows Vista, Windows XP SP2, Windows Server 2003

.NET Framework 和 .NET Compact Framework 並不支援各種平台的所有版本。如需支援平台版本的相關資訊,請參閱 .NET Framework 系統需求

版本資訊

.NET Framework

支援版本:3.0

請參閱

參考

InkAnalyzerBase 類別

InkAnalyzerBase 成員

System.Windows.Ink.AnalysisCore 命名空間

InkAnalyzerBase.Analyze

InkAnalyzerBase.BackgroundAnalyze

InkAnalyzerBase.DirtyRegion