사용자가 해당 폴더에 대한 확인란을 선택한 경우 다른 위치로 일부 폴더를 복사하려면 아래 코드가 있습니다.배경 작업자가있는 진행률 막대
나는 backgroundworker와 progresbar가 있습니다. 이 사이트에 심지어는 MSDN에 사람들이
for (int i = 0; i <= 100; i++)
{
// Report progress to 'UI' thread
backgroundWorker1.ReportProgress(i);
// Simulate long task
System.Threading.Thread.Sleep(100);
}
이 모든 괜찮 내가 어떻게 작동하는지에 대한 아이디어를 얻을로 진행 막대를 업데이트 같은 예제를 제공 것을 알 수있다. 하지만 내가 알아들을 수없는 것은 내 체크 박스를 구현하고 체크 된 폴더를 복사 한 다음 내가 가지고있는 체크 박스의 수에 따라 진행률 막대를 업데이트하는 것입니다. 나는 체크 박스를 세어 prgbarmax에 할당했다.
private void backgroundWorker1_DoWork(object sender, System.ComponentModel.DoWorkEventArgs e)
{
for (int i = 0; i < prgbarmax; i++)
{
int step = (i/prgbarmax) * 100;
if (test1)
{
//do the copy here
backgroundWorker1.ReportProgress(i);
}
if (tes2)
{
//do the copy here
backgroundWorker1.ReportProgress(i);
}
if (test3)
{
//do the copy here
backgroundWorker1.ReportProgress(i);
}
.... so on
}
}
WPF 또는 Windows Forms를 사용하고 있습니까? – Transcendent
복사 할 폴더의 목록을 구성하고 for 루프의 각 반복마다 하나의 폴더 만 복사해야합니다. 코드의 문제는 한 번의 반복으로 모든 폴더를 복사하려고했다는 것입니다. – kennyzx
@kennyzx 저는 C#에 대해 매우 익숙하며 코드로 배우려고합니다. 코드 예제를 줄 수 있습니까? – Besiktas