Salve,
devo creare un nuovo Thread da "Form1" e gestire l'avanzamento della ProgressBar che si trova in "Form1" dal nuovo Thread, come posso fare ???
codice:
namespace Test_Thread
{
public partial class Form1 : Form
{
Thread t;
public Form1()
{
InitializeComponent();
}
private void btnStart_Click(object sender, EventArgs e)
{
DataThread data = new DataThread(progressBar1);
t = new Thread(new ParameterizedThreadStart(TestThread));
t.Start(data);
}
public void TestThread(object data)
{
if (data != null)
{
((DataThread)data).PBar.Maximum = 100;
int n = 1000;
for (int i = 0; i <= n; i++)
{
((DataThread)data).PBar.PerformStep();
}
}
}
}
class DataThread
{
private ProgressBar m_oPb;
public DataThread(ProgressBar _oPb)
{
m_oPb = _oPb;
}
public ProgressBar PBar
{
get { return m_oPb; }
}
}
}
mi restituisce questo errore:
Cross-thread operation not valid: Control 'progressBar1' accessed from a thread other than the thread it was created on.