cs_Bidou
Messages postés5487Date d'inscriptiondimanche 4 août 2002StatutMembreDernière intervention20 juin 201361 24 juil. 2006 à 11:41
En faisant comme ceci par exemple :
[
Browsable(
false)]
public
new
Color ForeColor
{
get
{
return
base.ForeColor;
}
set { }
}
La property ne sera plus visible via intellisens, mais sera quand même utilisable.
C'est pour que ça que je combine avec un new, au cas ou l'utilisateur essayerait de l'utiliser : elle ne fait plus rien...
<hr size="2" />VC# forever
cs_Bidou
Messages postés5487Date d'inscriptiondimanche 4 août 2002StatutMembreDernière intervention20 juin 201361 24 juil. 2006 à 11:26
Salut,
On ne peut pas les supprimer, mais tu peux faire en sorte qu'elle ne soit pas visible (les masquer si on veut bien) pour le programmeur (il ne la verra pas via intellisens). Combiner avec le mot clef new, ça doit le faire
dgouttegattat
Messages postés129Date d'inscriptionmardi 22 novembre 2005StatutMembreDernière intervention30 décembre 20073 24 juil. 2006 à 11:51
Salut,
Je ne sais pas comment masquer une propriété, mais tu peux à la rigueur utiliser l'attribute System.ObsoleteAttribute sur les propriétés redéfinies que tu veux interdire à l'utilisateur. Ça ne l'empêchera pas de les voir, mais un warning sera généré à la compilation pour le prévenir qu'il ne doit pas les utiliser. Tu peux même faire en sorte que le compilateur génére une erreur et non un warning en mettant la propriété IsError de l'attribut à true.
Attention toutefois, je ne pense pas qu'il soit judicieux de faire cela sur certaines propriétés héritées de Control qui pourraient être nécessaires au bon fonctionnement du contrôle (je pense par exemple à Location, Size, etc.).