Creación dinamica de instancias

13/10/2004 - 21:51 por Herbert Saal | Informe spam
Saludos,

Como puedo crear dinámicamente instancias de una clase? Se me ocurre usar el
ArrayList para almacenar las instancias de la clase, para poder luego hacer
referencia a estas clases.

Luego como podría crear un "event handler" para un evento de estas
instancias?.

Gracias,
Herbert

Preguntas similare

Leer las respuestas

#1 Octavio Hernandez
13/10/2004 - 23:06 | Informe spam
Herbert,

La creación dinámica de instancias de una clase se realiza mediante el
operador new:

Form f = new Form();

Para 'recolectar' varias instancias dinámicas bajo un mismo nombre puedes
utilizar efectivamente un ArrayList:

ArrayList arr = new ArrayList();
arr.Add(f);

Luego para 'extraer' ese elemento hay que hacer una conversión de tipos:

f = (Form) arr[0];

Enlace útil sobre delegados y eventos:


http://www.c-sharpcorner.com/Code/2...SDD001.asp

Salu2,

Octavio

"Herbert Saal" escribió en el mensaje
news:
Saludos,

Como puedo crear dinámicamente instancias de una clase? Se me ocurre usar


el
ArrayList para almacenar las instancias de la clase, para poder luego


hacer
referencia a estas clases.

Luego como podría crear un "event handler" para un evento de estas
instancias?.

Gracias,
Herbert


Respuesta Responder a este mensaje
#2 Herbert Saal
14/10/2004 - 18:02 | Informe spam
Gracias, Octavio,

para el manejo de los eventos de las multiples instancias hice algo como
esto siguiendo tu ejemplo:

for(int i = 0; i < NumeroInstancias; i++)
{
((Form) arr[index].Load += new System.EventHandler(myEventHandler)
}

myEventHandler()
{
f = (Form) arr[0];
}

"Octavio Hernandez" wrote in message
news:
Herbert,

La creación dinámica de instancias de una clase se realiza mediante el
operador new:

Form f = new Form();

Para 'recolectar' varias instancias dinámicas bajo un mismo nombre puedes
utilizar efectivamente un ArrayList:

ArrayList arr = new ArrayList();
arr.Add(f);

Luego para 'extraer' ese elemento hay que hacer una conversión de tipos:

f = (Form) arr[0];

Enlace útil sobre delegados y eventos:


http://www.c-sharpcorner.com/Code/2...SDD001.asp

Salu2,

Octavio

"Herbert Saal" escribió en el mensaje
news:
Saludos,

Como puedo crear dinámicamente instancias de una clase? Se me ocurre usar


el
ArrayList para almacenar las instancias de la clase, para poder luego


hacer
referencia a estas clases.

Luego como podría crear un "event handler" para un evento de estas
instancias?.

Gracias,
Herbert






Respuesta Responder a este mensaje
#3 Octavio Hernandez
14/10/2004 - 20:35 | Informe spam
Herbert,

La "firma" del delegado encargado de gestionar el evento debe coincidir con
la del evento. Lo que te qiuero decir es que MyEventHandler no puede ser un
método cualquiera, sino que debe respetar los parámetros que éste requiere.
Mira este ejemplo:
private void myEventHandler(object sender, EventArgs e)

{

MessageBox.Show("Se ha cargado la ventana " + (sender as Form).Name);

}

private void button1_Click(object sender, EventArgs e)

{

ArrayList a = new ArrayList(20);

a.Add(this);

for(int i = 0; i < a.Count; i++)

{

((Form) a[i]).Load += new System.EventHandler(myEventHandler);

}

}

"Herbert Saal" escribió en el mensaje
news:
Gracias, Octavio,

para el manejo de los eventos de las multiples instancias hice algo como
esto siguiendo tu ejemplo:

for(int i = 0; i < NumeroInstancias; i++)
{
((Form) arr[index].Load += new System.EventHandler(myEventHandler)
}

myEventHandler()
{
f = (Form) arr[0];
}

"Octavio Hernandez" wrote in message
news:
> Herbert,
>
> La creación dinámica de instancias de una clase se realiza mediante el
> operador new:
>
> Form f = new Form();
>
> Para 'recolectar' varias instancias dinámicas bajo un mismo nombre


puedes
> utilizar efectivamente un ArrayList:
>
> ArrayList arr = new ArrayList();
> arr.Add(f);
>
> Luego para 'extraer' ese elemento hay que hacer una conversión de tipos:
>
> f = (Form) arr[0];
>
> Enlace útil sobre delegados y eventos:
>
>
>


http://www.c-sharpcorner.com/Code/2...SDD001.asp
>
> Salu2,
>
> Octavio
>
> "Herbert Saal" escribió en el mensaje
> news:
>> Saludos,
>>
>> Como puedo crear dinámicamente instancias de una clase? Se me ocurre


usar
> el
>> ArrayList para almacenar las instancias de la clase, para poder luego
> hacer
>> referencia a estas clases.
>>
>> Luego como podría crear un "event handler" para un evento de estas
>> instancias?.
>>
>> Gracias,
>> Herbert
>>
>>
>
>


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