나는 두 개의 다른 클래스 인 downloadWiki와 GetLinks를 가지고 있으며, 각각은 약간의 시간이 필요한 루프가 있으며, 내 버튼과 진행률 막대가있는 Form.cs 클래스가 있습니다.다른 클래스가있는 WindowsForm에서 Progressbar와 함께 BackgroundWorker 사용
내 downloadWiki에는 다른 HTML 페이지를 반복하는 루프가 있으며 GetLinks 클래스에는 각 Wiki 페이지의 모든 링크를 가져 와서 내 downloadWiki 클래스로 보내는 루프가 있습니다. 몇 가지 if 문 다음에 위키를 다운로드합니다. 내 문제는 링크를 사용하여 루프의 진행률 표시 줄과 배경 작업자를 구현하고 지난 2 시간 동안 위키피지를 다운로드하는 작업을 시도했습니다. 하지만 해결책을 찾지 못했습니다. 이것은 내 Windows Forms 코드에서 실행되는 코드입니다. 그래서 backgroundWorker를 두 클래스에 보내는 방법을 모르겠습니다.
코드가 더 필요하면 의견을 보내주십시오. 당신은 ProgressBar를 원하는
public FrmMain()
{
InitializeComponent();
_backgroundWorker.WorkerReportsProgress = true;
_backgroundWorker.ProgressChanged += _backgroundWorker_ProgressChanged;
_backgroundWorker.DoWork += _backgroundWorker_DoWork;
_backgroundWorker.RunWorkerCompleted += _backgroundWorker_RunWorkerCompleted;
}
:이 구글의 질문에 쉽게,하지만 C#으로
private void button1_Click(object sender, EventArgs e)
{
DownloadWikis wikis = new DownloadWikis();
}
표준 ProgressBar 질문입니다. 얼마나 오래 걸릴지 알면 * 작동 할 수 있습니다. 당신은 결코 알지 못한다. 서버는 당신에게 말하지 않는다. 고정 된 수의 URL을 가지고있는 경우 URL을 고정시킬 수 있습니다. ProgressBar.Style을 "움직이는 텍스트"로 설정하십시오. 대폭 쓸모없는 발췌 문장. –
미안하지만, 대부분의 코드가 생성자에 있고 다른 클래스로 분리되어 있기 때문에 추가해야 할 코드가 무엇인지 알 수 없습니다. 또한 조언을위한 thx. –