[.Net] Masquer une propriété lors d'un héritage [Résolu]

Dalida 6766 Messages postés mardi 14 mai 2002Date d'inscriptionContributeurStatut 11 janvier 2016 Dernière intervention - 3 avril 2006 à 16:01 - Dernière réponse : Dalida 6766 Messages postés mardi 14 mai 2002Date d'inscriptionContributeurStatut 11 janvier 2016 Dernière intervention
- 3 avril 2006 à 18:00
salut,



en héritant d'un contrôle je souhaite masquer plusieurs propriétés.

je connais l'attribut Browsable mais il ne concerne que le design et il
faudrait que je déclare toutes les fonctions à cacher. il y a aussi
Obsolete, pareil...



je me souviens
d'une méthode qui permet de le faire. elle s'utilise, me semble-t-il, à
l'intérieur du constructeur et prend comme paramètre le nom de la
propriété (un peu comme SetStyle).



genre :



Public Sub New ()



HideProperty(propertyName)



End Sub



si quelqu'un a plus de mémoire que moi, chui preneur !




[ Dalida ]<hr>
pensez à indiquer le langage utilisé et sa version !
Afficher la suite 

3 réponses

Meilleure réponse
Dalida 6766 Messages postés mardi 14 mai 2002Date d'inscriptionContributeurStatut 11 janvier 2016 Dernière intervention - 3 avril 2006 à 18:00
3
Merci
Quine !



j'ai retrouvé ce dont je parlais (d'ailleurs je ne souhaitais pas masquer la propriété mais l'occulter ) !

bon le seul problème c'est que c'est bien différent de mes souvenirs, mais bon...

en fait la manip a lieu dans de Designer et permet de faire disparaitre
les propriétés au moment du design (comme BrowsableAttribute). on peut
aussi les masquer ou en créer de nouvelles (pour modifier les
propriétés il faut utiliser PostFilterProperties).



je vous file l'exemple de l'aide tel quel :



' The PreFilterProperties method is where you can add or remove

' properties from the component being designed.

'

' In this implementation, the Visible property is removed,

' the BackColor property is shadowed by the designer, and

' the a new property, called Locked, is added.

Protected Overrides Sub PreFilterProperties(ByVal properties As IDictionary)



' Always call the base PreFilterProperties implementation

' before you modify the properties collection.

MyBase.PreFilterProperties(properties)



' Remove the visible property.

properties.Remove("Visible")



' Shadow the BackColor property.

Dim propertyDesc As
PropertyDescriptor =
TypeDescriptor.CreateProperty(GetType(TabControlDesigner),
CType(properties("BackColor"), PropertyDescriptor), New Attribute(-1)
{})

properties("BackColor") = propertyDesc



' Create the Locked property.

properties("Locked") =
TypeDescriptor.CreateProperty(GetType(TabControlDesigner), "Locked",
GetType(Boolean), CategoryAttribute.Design, DesignOnlyAttribute.Yes)



End Sub




[ Dalida ]<hr>
pensez à indiquer le langage utilisé et sa version !

Merci Dalida 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 74 internautes ce mois-ci

NHenry 14250 Messages postés vendredi 14 mars 2003Date d'inscription 10 août 2018 Dernière intervention - 3 avril 2006 à 16:14
0
Merci
Bonjour

Tu peux tenter :

private shadows property .....

Shadows masque tous les membres portant le mme nom dans les classes parentes.

Il est plus facile de batiser kk1 que de la convertir. (surtout en programmation)
Une question se pose sur le forum, pas en privé
NHenry (VB6, VBA excel, VB.NET, C++, C#.Net)
Dalida 6766 Messages postés mardi 14 mai 2002Date d'inscriptionContributeurStatut 11 janvier 2016 Dernière intervention - 3 avril 2006 à 16:16
0
Merci
>NHenry : oui, mais il faut que je déclare toutes les propriétés à masquer, c'est la même limite qu'avec les attributs.

merci quand même !




[ Dalida ]<hr>
pensez à indiquer le langage utilisé et sa version !

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.