InkAnalyzerBase.Abort 메서드
업데이트: 2007년 11월
현재 분석 작업을 취소합니다.
네임스페이스: 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에서 IntermediateResultsUpdatedBase 또는 ResultsUpdatedBase 이벤트를 발생시키는 시간까지는 Abort를 호출하지 마십시오.
응용 프로그램 데이터와 잉크 분석기를 동기화하는 방법에 대한 자세한 내용은 Data Proxy with Ink Analysis을를 참조하십시오.
예제
이 예제에서는 잉크 분석기의 ActivityBase 이벤트에 대한 이벤트 처리기를 정의합니다. 분석 작업을 취소해야 하는 경우 이벤트 처리기는 이벤트를 생성하고 분석기의 DirtyRegion 속성을 업데이트하는 InkAnalyzerBase에 대해 Abort를 호출합니다.
''' <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에서 지원
참고 항목
참조
System.Windows.Ink.AnalysisCore 네임스페이스