como utilzar el objeto asignado a la propiedad Container de mi componente

24/01/2007 - 07:58 por Daniel R. Rossnagel | Informe spam
quiero poder tomar el obejto y llamar a sus metodos o enlzar a evnetos de
este.

Preguntas similare

Leer las respuestas

#6 Daniel R. Rossnagel
24/01/2007 - 16:59 | Informe spam
No te da la impresion de que es como que no tuviera logica, el que no pueda
hacer referencia al objeto/Componente contenedor del componente en el que
estoy, para poder llamar a sus metodos y propiedades?
Ya no se me ocurre como buscar, o q hacer para solucionar el inconveniente,
de todas formas lo soluciono buscando el formulario por medio de los
componentes del contenedor pero no me parece correcto.

public Form decimeelform()
{
// C#
foreach (Component cp in this.Container.Components)
{
Control mycontrol = (cp as Control);
if(cp!=null)
{
Form myform = mycontrol.FindForm();
if (myform != null)
{
return myform;
}
}
}
return null;
}




"Alberto Poblacion"
escribió en el mensaje news:
"Daniel R. Rossnagel" wrote in message
news:
this.Container
Value = {System.ComponentModel.Container}
Type = System.ComponentModel.IContainer
{System.ComponentModel.Container}

y de aca no salgo, por que no me daja hacer casting de este Type



Pues no vas a poder hacer nada por esta vía. La clase Container no
tiene ninguna propiedad ni método que haga referencia al objeto que la
contiene. Solo habrías tenido suerte si el componente estuviera alojado en
alguna clase que implemetara el interface IContainer, en cuyo caso se
podría hacer el cast al tipo de dicha clase. Pero a través de Container no
se puede hacer. Tendrás que usar algún otro mecanismo para pasarle a tu
componente la referencia a la clase cuyos métodos quieres usar. Por
ejemplo, modifica el constructor para que acepte un parámetro y pásale al
instanciarlo la clase que quieres utilizar.



email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida