Estimados,
Estoy desarrollando una aplicacion en la cual uso controles de usuarios, bueno lo que quiero hacer es clonar un control de usuario que se muestra en un Form y mostrarlo en otro Form , pero quiero hacerle una clonacion superficial ya que dentro del control tengo otras clases y variables por referencia que quiero copiar. uso el metodo
MemberwiseClone() para hacer la "Shallow Copy", el problema es que cuando muestro el segundo formulario se me queda en blanco como tonteando. esto es lo que hago
IClasePadre Clase = new GTSOLICITANTE(); // aqui instancio el control de usuario //iclasepadre es una interfaz
this.Controls.Add(Clase.Control);//agrego el contrlol de la clase a los controles del formulario
IClasePadre Clase2 =(IClasePadre) Clase.Clone(); //creo el clone de la clase()
Form Fr = new Form(); //creo el formulario
Fr.Controls.Add(Clase2.Control);// agrego el contrl de la clase clon a los controles del nuevo formularios
Fr.Refresh(); //refresco
Fr.Show(); // y muestro pero aqui el formulario se bloquea y se hace una especie de bug donde tengo que para la ejecucion
quisiera saber que puede estar pasando, tengo ciertas hipotesis, bueno una de un amigo que desarrolla conmigo el proyecto dice que esta mal implementado el Clone(), pero si realiza el clon cuando yo muestro el control de la Clase clonada en l formulario original sin crear un nuevo si lo muestra pero cuando intento mostrar los dos controles en formularios distintos no los muestra... mi hipotesis seria que el visual genera una excepcion cuando trato de mostrar 2 controles que hacen referencia al mismo sitio de memoria , no se la verdad. espero me puedan ayudar
Saludos Coriales