La forma correcta de implementar una barra de progreso en C #
Estoy aprendiendo winforms y me he fijado el objetivo simple de hacer una barra de progreso que va de vacía a completa. Aquí está mi intento deforme:
public partial class Form1 : Form
{
static BackgroundWorker bw = new BackgroundWorker();
public Form1()
{
InitializeComponent();
bw.DoWork += bw_DoWork;
bw.RunWorkerAsync();
}
void bw_DoWork(object sender, DoWorkEventArgs e)
{
for(int i=0; i<100; ++i)
{
progressBar1.PerformStep();
Thread.Sleep(10);
}
}
}
Estoy bastante seguro de que elThread.Sleep()
es reprensible. ¿Cómo lo evito aquí?