El Guru Programador
Usuario DESCONOCIDO | Registrate Gratis | Usuarios Registrados
Foro de C++/C#
Foros del Guru > C++/C#
Usuario C#, no puedo crear controles desde...
barrakus
1 Mensaje(s)
Enviado - 18/8/2004
?
hola a todos, vereis, tengo el siguiente problema:

estoy haciendo una herramienta para escuchar conexiones.
entonces yo abro un ServerSocket y creo un Thread exclusivo para escuchar, que codifico en esta funci?n:

private newSocket()
{
while(true)
{
Socket socket = _tcpl.AcceptSocket();
crearPesta?ita();
}
}

por supuesto esta funci?n se ejecuta en un proceso a parte.

el tema es que cada vez que me acepte una conexi?n nueva el m?todo crearPesta?ita() se encarga de crear un tab nuevo en mi formulario principal.
Todo funciona bien, pero me salta una execpi?n que dice:

Excepci?n no controlada del tipo 'System.ArgumentException' en system.windows.forms.dll
Informaci?n adicional: Los controles creados en un subproceso no pueden tener controles primarios en un control en un subproceso diferente.

en mi caso, supongo que los controles principales se crean al crear el formulario principal, pero los nuevos tabs se crean desde el subproceso de aceptar conexiones newSocket()

no se como puedo solucionarlo, nunca se me ab?a ocurrido que esto pudiera suceder. no me gustar?a usar timers. necesito ayuda

si veis un modo mas chulo para implementar el tema no os corteis
?
Desconocido
Enviado - 30/10/2004
?
Aqui encontraras tu solucion:
http://msdn.microsoft.com/library/spa/default.asp?url=/library/SPA/vbcon/html/vbtskmanipulatingcontrolsfromthreads.asp

Se trata de usar delegados.A mi paso lo mismo y consegui solucionarlo.
Chaou
?
?

?

Contactos myStudio Network
?