Copia de un control a otro

15/06/2006 - 13:20 por Javier Garcia | Informe spam
Buenas, tengo un objeto Control que quiero copiarlo a otro, que este tome
todos sus valores, propiedades, etc, pero sea otro objeto, de forma que los
cambios que haga en uno no se reflejen al otro

es decir (en codigo)
Control original = new Control();

Control control = new Control();

control = original

control.Name = "oeoeoeooeoe";

Y cuando agrego una inspeccion a original tb le cambia la propiedad name. Y
eso es lo que quiero evitar, que los cambios de un control solo salpiquen a
un control, pero que copie todo el estado del otro
 

Leer las respuestas

#1 Jose Escrich
15/06/2006 - 19:08 | Informe spam
Hola Javier,

Para cualquier objeto puedes aplicar ICloneable esta parte de System, alli
tienes las signatures adecuadas para implementar la copia de un objeto con
las mismas caracteristicas, es decir los valores de sus propiedades y demas.
Ten en cuenta que al implementar el metodo Clone (miembro de la interfaz
ICloneable) deberas tener cuidado de hacer un clone tambien de las referencias
que tenga internamente (o no segun el caso de uso que tengas) es lo que se
llama deep copy o not deep copy.

Control (Windows Form) no implementa ICloneable, deberas hacer tu propia
implementacion.

msdn: http://msdn2.microsoft.com/es-es/li...eable.aspx

saludos, espero te sirva.

Jose Escrich
mailto: jescrich -a- gmail.com
http://latincoder.com

JG> Buenas, tengo un objeto Control que quiero copiarlo a otro, que este
JG> tome todos sus valores, propiedades, etc, pero sea otro objeto, de
JG> forma que los cambios que haga en uno no se reflejen al otro
JG>
JG> es decir (en codigo)
JG> Control original = new Control();
JG> Control control = new Control();
JG>
JG> control = original
JG>
JG> control.Name = "oeoeoeooeoe";
JG>
JG> Y cuando agrego una inspeccion a original tb le cambia la propiedad
JG> name. Y eso es lo que quiero evitar, que los cambios de un control
JG> solo salpiquen a un control, pero que copie todo el estado del otro
JG>

Preguntas similares