C# 如何在另一个标签中显示每个线程?

C# 如何在另一个标签中显示每个线程?,c#,winforms,backgroundworker,C#,Winforms,Backgroundworker,在button1 click事件中,我创建了许多backgroundworkers,这取决于我在列表框中选择了多少项: private void button1_Click(object sender, EventArgs e) { // For each item selected in the listbox foreach (var item in listBox1.SelectedItems) { B

在button1 click事件中,我创建了许多backgroundworkers,这取决于我在列表框中选择了多少项:

    private void button1_Click(object sender, EventArgs e)
    {
        // For each item selected in the listbox
        foreach (var item in listBox1.SelectedItems)
        {
            BackgroundWorker worker = new BackgroundWorker();
            worker.DoWork += backgroundWorker1_DoWork;
            worker.RunWorkerCompleted += backgroundWorker1_RunWorkerCompleted;
            object argument = item;
            worker.RunWorkerAsync(argument);
        }

        offlineOnline = false;
        init();
        button1.Enabled = false;
        this.Text = "Processing...";
        label6.Text = "Processing...";
        label6.Visible = true;
        button2.Enabled = false;
        checkBox1.Enabled = false;
        checkBox2.Enabled = false;
        numericUpDown1.Enabled = false;
        button3.Enabled = true;
        button6.Enabled = false;
        button4.Enabled = true;
        button5.Enabled = false;
        listBox1.Enabled = false;
    }
}
然后在DoWork事件中,我使用如下线程:

private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e)
{
    object input = e.Argument;
    string f = GetUrl(input);
    this.Invoke(new MethodInvoker(delegate { label2.Text = "Website To Crawl: "; }));
    this.Invoke(new MethodInvoker(delegate { label4.Text = f; }));
    if (offlineOnline == true)
    {
        offlinecrawling(f, levelsToCrawl, e);
    }
    else
    {
        webCrawler(f, levelsToCrawl, e);
    }
}
问题是,在label4.Text中,我将看到这两个线程的最后一个URL。例如,我想要两个不同的标签。每个线程将显示另一个线程。例如,在label4.Text中有www.cnn.com,在label7.Text中有www.cnet.com


我不知道如何捕获或获取每个线程URL并将其放入标签中?

是的,首先我建议重命名您的控件-正如@Henk_Holterman建议的那样。 例如,您不仅可以将输入作为参数传递,还可以将具有要更新的输入+标签的某些类/对作为参数传递。
然后,更新您的代理以使用指定的标签。

请首先为这些控件指定一个正确的名称。如何从
参数
?Henk我刚刚更新了我的问题,我在button1 click事件中遗漏了一些代码。出于某种原因,我删除了所有这些混乱。。。