[BackgroundWorker]
BackgroundWorker는 별도의 쓰레드에게 일을 시키기 위해 사용하는 클래스.
[ProgressBar]
ProgressBar는 작업진행이 얼마 되었는지 보여주는 표시바이다.
public frmAutoGetList()
{
InitializeComponent();
bworker.WorkerReportsProgress = true;
bworker.WorkerSupportsCancellation = true;
bworker.DoWork += new DoWorkEventHandler(bworker_DoWork);
bworker.ProgressChanged += new ProgressChangedEventHandler(bworker_ProgressChanged);
bworker.RunWorkerCompleted += new RunWorkerCompletedEventHandler(bworker_RunWorkerCompleted);
}
//실행버튼
private void cmdEx_Click(object sender, EventArgs e)
{
bworker.RunWorkerAsync();
}
//취소버튼
private void cmdCancel_Click(object sender, EventArgs e)
{
bworker.CancelAsync();
this.Close();
}
//백그라운드 실제 처리할 작업
private void bworker_DoWork(object sender, DoWorkEventArgs e)
{
//백그라운드로 처리 할 코드 기입
//bworker.ReportProgress(숫자);
}
//작업 진행률 표시
private void bworker_ProgressChanged(object sender, ProgressChangedEventArgs e)
{
pBar.Value = e.ProgressPercentage;
}
//작업이 완료
private void bworker_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
{
if (e.Error != null)
{
MessageBox.Show(e.Error.Message, "Error");
return;
}
}
http://cafe.naver.com/winform/103
http://www.csharpstudy.com/WinForms/WinForms-backgroundworker.aspx
'컴퓨터 > 언어,프로그래밍' 카테고리의 다른 글
[C# .NET] MSFlexGrid 컨트롤에 직접 입력 가능한 기능 만들기 (종목추가/종목삭제) (0) | 2012.09.20 |
---|---|
How to Move the Textbox Control in C# (0) | 2012.09.20 |
[C# .NET] NotifyIcon, ContextMenuStrip 활용 (초간단ㅋ) (1) | 2012.09.18 |
[C#] Tray Icon (트래이 아이콘)으로 만들기 (0) | 2012.09.17 |
[C#] progress bar 사용하기 (1) | 2012.09.17 |