Hola a todos,
tenía este código para un proyecto de vs2003 y funcionaba. Lo he llevado a
vs2005 y en depuración me falla
//Error de depuración: "Operación no válida a través de subprocesos: Se tuvo
acceso al control 'nombre de control' desde un subproceso distinto de aquel
en que lo creó".
He visto que había un flag para que se comportara como vs2003, pero si en
vs2005 lo hacen de cierta forma, quiero hacerlo así.
Qué tendría que cambiar en el código ?? Me comentaron que las asignaciones
de valores a los controles hay que evitarlas hacer directamente.
Tengo estos controles, this.bytesDownloadedTextBox, progressBar,
totalBytesTextBox.
Existe una forma genérica de hacerlo ?
Gracias
private void DownloadProgressCallback ( int bytesSoFar, int totalBytes )
{
try
{
this.bytesDownloadedTextBox.Text =
bytesSoFar.ToString("#,##0"); // Problema de subprocesos
if (totalBytes != -1)
{
progressBar.Minimum = 0;
progressBar.Maximum = totalBytes;
progressBar.Value = bytesSoFar;
totalBytesTextBox.Text = totalBytes.ToString("#,##0");
}
else
{
progressBar.Visible = false;
totalBytesTextBox.Text = "Total File Size Not Known";
}
}
catch (Exception ex)
{
Console.WriteLine("Error DownloadProgressCallback " +
ex.Message);
}
}
http://www.alhambra-eidos.com/web2005/index.html
Leer las respuestas