Creé un Testbox para aprender algo sobre el enhebrado en las aplicaciones de formularios de Windows. Silverlight y Java proporcionan el Dispatcher, lo que realmente ayuda al actualizar Elementos de GUI.Problema con la sintaxis de delegado en C#
Ejemplos de código: Declaración clase Delegate
public delegate void d_SingleString(string newText);
Crear secuencia
_thread_active = true;
Thread myThread = new Thread(delegate() { BackGroundThread(); });
myThread.Start();
Tema función actualiza
private void BackGroundThread()
{
while (_thread_active)
{
MyCounter++;
UpdateTestBox(MyCounter.ToString());
Thread.Sleep(1000);
}
}
Delegar TextBox
public void UpdateTestBox(string newText)
{
if (InvokeRequired)
{
BeginInvoke(new d_SingleString(UpdateTestBox), new object[] { newText });
return;
}
tb_output.Text = newText;
}
¿Hay alguna manera de declarar la Declaración del Delate en el método BeginInvoke?
algo así como
BeginInvoke(*DELEGATE DECLARATION HERE*, new object[] { newText });
Muchas gracias, RAYT
Love your eloboration Marc. Acabo de aprender mucho más que leer MSDN por 10 minutos :) –
Las maravillas de apartamentos de una sola rosca ... – Spence
Solución muy elegante; esa debería ser realmente la respuesta aceptada para esta pregunta. –