Comment filtrer les propriétés visibles dans l'éditeur de collection d'une grille de propriétés (formulaires Win)?

StackOverflow https://stackoverflow.com/questions/5876966

Question

J'ai une grille de propriétés qui pointe vers un objet pour voir ses propriétés.Je filtre en procédant comme suit:

            propertyGrid1.BrowsableAttributes = new System.ComponentModel.AttributeCollection(new Attribute[]
            {
                new CategoryAttribute("All")
            });

Mon objet a une collection d'objets Control.Lorsque je visualise juste l'objet, toutes les propriétés qui n'ont pas [Category ("All")] sont filtrées.Jusqu'ici tout va bien.Cependant, lorsque je vais dans l'éditeur de collections, cet éditeur affiche les propriétés qui ne sont pas marquées avec [Category ("All")].Ceci n'est pas souhaitable.Comment résoudre ce problème?

Était-ce utile?

La solution

J'ai peur que vous deviez sous-classer l'éditeur de collection pour faire cela ...

cet article décrit commentpour accéder à la grille de propriétés sur le formulaire de l'éditeur de collection (voir le remplacement de CreateCollectionForm dans l'article)

au lieu d'enregistrer des gestionnaires d'événements, vous pouvez y configurer votre restriction pour les attributs navigables ...

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top