Acerca del desarrollo de componentes

17/05/2005 - 18:44 por [Juanjo] | Informe spam
Hola grupo

Estoy intentando desarrollar un componente, que tenga una propiedad que
pueda elegir
valor entre una lista de valores posibles (como un combo). Esto lo consigo
si la propiedad es de
tipo enum, tengo una lista de valores fijos, y me aparece el combo
corresponiente para dicha
propiedad.

Mi problema es que la lista de valores que yo quiero que muestre, quiero
no sea fija,digamos
que fuera una matriz de cadenas (string), y aqui me he quedado, no se seguir
mas, si alguien me puede
orientar, decir alguna web, etc,

Muchas gracias

Preguntas similare

Leer las respuestas

#1 Eduardo A. Morcillo [MS MVP VB]
18/05/2005 - 05:34 | Informe spam
Tienes que crear una clase derivada de TypeConverter, en ella sobreescribir
los metodos GetStandardValues y GetStandardValuesSupported para devolver los
valores que quieras y luego aplicar ese type converter a la propiedad del
componente mediante el atributo TypeConverterAttribute. Aunque esta en
VB.NET esto te va a orientar:

http://groups-beta.google.com/group...27f7?hl=en

Eduardo A. Morcillo [MS MVP VB]
http://www.mvps.org/emorcillo
Respuesta Responder a este mensaje
#2 [Juanjo]
18/05/2005 - 09:07 | Informe spam
Muchas gracias, voy a probar a ver q consigo

"Eduardo A. Morcillo [MS MVP VB]" <emorcillo .AT. mvps.org> escribió en el
mensaje news:
Tienes que crear una clase derivada de TypeConverter, en ella


sobreescribir
los metodos GetStandardValues y GetStandardValuesSupported para devolver


los
valores que quieras y luego aplicar ese type converter a la propiedad del
componente mediante el atributo TypeConverterAttribute. Aunque esta en
VB.NET esto te va a orientar:




http://groups-beta.google.com/group...27f7?hl=en

Eduardo A. Morcillo [MS MVP VB]
http://www.mvps.org/emorcillo


Respuesta Responder a este mensaje
#3 [Juanjo]
18/05/2005 - 11:45 | Informe spam
Hola de nuevo:

Funciona muy bien, hace justo lo que necesitaba, pero ahora
me surge otro problema, puedo pasar algun parametro a la clase MiConvert,
para que en funcion de ese paramatro me carge unos datos u otros?

Muchas gracias


"[Juanjo]" escribió en el mensaje
news:
Muchas gracias, voy a probar a ver q consigo

"Eduardo A. Morcillo [MS MVP VB]" <emorcillo .AT. mvps.org> escribió en el
mensaje news:
> Tienes que crear una clase derivada de TypeConverter, en ella
sobreescribir
> los metodos GetStandardValues y GetStandardValuesSupported para devolver
los
> valores que quieras y luego aplicar ese type converter a la propiedad


del
> componente mediante el atributo TypeConverterAttribute. Aunque esta en
> VB.NET esto te va a orientar:
>
>



http://groups-beta.google.com/group...27f7?hl=en
>
> Eduardo A. Morcillo [MS MVP VB]
> http://www.mvps.org/emorcillo
>
>


Respuesta Responder a este mensaje
#4 Eduardo A. Morcillo [MS MVP VB]
18/05/2005 - 14:58 | Informe spam
Funciona muy bien, hace justo lo que necesitaba, pero ahora
me surge otro problema, puedo pasar algun parametro a la clase
MiConvert, para que en funcion de ese paramatro me carge unos datos u
otros?



No se puede pasarle parametros directamente ya que el converter es
instanciado por el IDE y no tienes control sobre el. Sin embargo en el
parametro context de GetStandardValues se pasa la instancia del componente
que se esta editando y entonces puedes tomar valores de sus propiedades o
funciones. Si lo que se tiene que pasar es algo privado a lo que el usuario
final no debe acceder basta con declarar la funcion/propiedad como internal.

Eduardo A. Morcillo [MS MVP VB]
http://www.mvps.org/emorcillo
Respuesta Responder a este mensaje
#5 [Juanjo]
18/05/2005 - 19:52 | Informe spam
Muchas gracias por todo. Ya funciona perfectamente.

Un cordial saludo

"Eduardo A. Morcillo [MS MVP VB]" <emorcillo .AT. mvps.org> escribió en el
mensaje news:
Funciona muy bien, hace justo lo que necesitaba, pero ahora
me surge otro problema, puedo pasar algun parametro a la clase
MiConvert, para que en funcion de ese paramatro me carge unos datos u
otros?



No se puede pasarle parametros directamente ya que el converter es
instanciado por el IDE y no tienes control sobre el. Sin embargo en el
parametro context de GetStandardValues se pasa la instancia del componente
que se esta editando y entonces puedes tomar valores de sus propiedades o
funciones. Si lo que se tiene que pasar es algo privado a lo que el
usuario final no debe acceder basta con declarar la funcion/propiedad como
internal.

Eduardo A. Morcillo [MS MVP VB]
http://www.mvps.org/emorcillo

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