BackgroundWorker.OnProgressChanged(ProgressChangedEventArgs) 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
ProgressChanged 이벤트를 발생시킵니다.
protected:
virtual void OnProgressChanged(System::ComponentModel::ProgressChangedEventArgs ^ e);
protected virtual void OnProgressChanged(System.ComponentModel.ProgressChangedEventArgs e);
abstract member OnProgressChanged : System.ComponentModel.ProgressChangedEventArgs -> unit
override this.OnProgressChanged : System.ComponentModel.ProgressChangedEventArgs -> unit
Protected Overridable Sub OnProgressChanged (e As ProgressChangedEventArgs)
매개 변수
EventArgs 이벤트 데이터가 들어 있는 항목입니다.
예제
다음 코드 예제에서는 메서드를 사용하여 OnProgressChanged 비동기 작업의 진행률을 보고하는 방법을 보여 줍니다. 이 코드 예제는 클래스에 제공된 더 큰 예제의 AsyncOperationManager 일부입니다.
// This method is invoked via the AsyncOperation object,
// so it is guaranteed to be executed on the correct thread.
void CalculateCompleted(object operationState)
{
CalculatePrimeCompletedEventArgs e =
operationState as CalculatePrimeCompletedEventArgs;
OnCalculatePrimeCompleted(e);
}
// This method is invoked via the AsyncOperation object,
// so it is guaranteed to be executed on the correct thread.
void ReportProgress(object state)
{
ProgressChangedEventArgs e =
state as ProgressChangedEventArgs;
OnProgressChanged(e);
}
protected void OnCalculatePrimeCompleted(
CalculatePrimeCompletedEventArgs e) =>
CalculatePrimeCompleted?.Invoke(this, e);
protected void OnProgressChanged(ProgressChangedEventArgs e) =>
ProgressChanged?.Invoke(e);
' This method is invoked via the AsyncOperation object,
' so it is guaranteed to be executed on the correct thread.
Private Sub CalculateCompleted(ByVal operationState As Object)
Dim e As CalculatePrimeCompletedEventArgs = operationState
OnCalculatePrimeCompleted(e)
End Sub
' This method is invoked via the AsyncOperation object,
' so it is guaranteed to be executed on the correct thread.
Private Sub ReportProgress(ByVal state As Object)
Dim e As ProgressChangedEventArgs = state
OnProgressChanged(e)
End Sub
Protected Sub OnCalculatePrimeCompleted( _
ByVal e As CalculatePrimeCompletedEventArgs)
RaiseEvent CalculatePrimeCompleted(Me, e)
End Sub
Protected Sub OnProgressChanged( _
ByVal e As ProgressChangedEventArgs)
RaiseEvent ProgressChanged(e)
End Sub
설명
이벤트를 발생시키는 경우 대리자를 통해 이벤트 처리기가 호출됩니다. 자세한 내용은 이벤트 처리 및 발생을 참조하세요.
또한 이 OnProgressChanged 메서드를 사용하면 파생 클래스가 대리자를 연결하지 않고도 이벤트를 처리할 수 있습니다. 파생 클래스에서 이벤트를 처리하기 위한 기본 설정 기술입니다.
상속자 참고
파생 클래스에서 재정의하는 OnProgressChanged(ProgressChangedEventArgs) 경우 등록된 대리자가 이벤트를 받도록 기본 클래스의 OnProgressChanged(ProgressChangedEventArgs) 메서드를 호출해야 합니다.
적용 대상
추가 정보
- ProgressChanged
- 방법: 백그라운드에서 작업 실행
- 방법: 백그라운드에서 파일 다운로드하기