2009-03-05 29 views

Respuesta

15

Puede anularlos (si se pueden sobrescribir) y aplicar el atributo Browsable, especificando false, o crear una nueva versión de la propiedad y aplicar el mismo atributo (este segundo enfoque no siempre parece funcionar así YMMV).

Además, puede utilizar un TypeConverter personalizado para su tipo y anular el método GetProperties para controlar qué propiedades se muestran para su tipo. Este enfoque es más sólido para las clases base subyacentes que cambian, pero puede requerir más esfuerzo, según lo que desee lograr.

A menudo uso una combinación del atributo Browsable y un TypeConverter personalizado.

+0

Gracias, Browsable se encargó de eso. – Krakerjak

+0

No hay problema. Siempre feliz de ayudar. –

+1

+1 para TypeConverter –

6

sustituye a la propiedad y añadir [Browsable(false)].

Es posible que también desee agregar [EditorBrowsable(EditorBrowsableState.Never)], que ocultará la propiedad en IntelliSense en el editor de código. Tenga en cuenta que solo estará oculto en una solución separada del control original.

4

usando System.ComponentModel;

[Browsable(false), DesignerSerializationVisibility(
          DesignerSerializationVisibility.Hidden)] 
public int MyHiddenProp {get; set; } 

trabajó para mí de esa manera, que no aparecería en diseñador-propiedades, y los propertiy no se inicializará por el diseñador, que anularía mi propia inicialización ....

+0

funcionó para mí también +1 – Kevin

Cuestiones relacionadas