Quand faut-il utiliser [Consultable(true)]?
Quand faut-il utiliser [Browsable(true)]
?
MODIFIER (par SLaks): Il pose la question (je suppose) pourquoi on a besoin de passer true
en tant que paramètre, étant donné que c'est déjà true
par défaut.
- Chaque fois que vous avez besoin de la propriété apparaît dans la fenêtre des Propriétés.
Vous devez vous connecter pour publier un commentaire.
MSDN dit tout:
Par exemple, si vous êtes en train de créer un Contrôle Utilisateur, vous pouvez décorer les non-liées à l'INTERFACE utilisateur propriétés avec
[Browsable(false)]
de sorte qu'ils ne seront pas disponibles à travers une fenêtre de Propriétés.En outre, il contrôle les propriétés d'un objet peut être vu dans un
grille des propriétés
.Aussi pourquoi nous pouvons passer
true
explicitement, je crois que cela est dû àBrowsableAttributes
propriété d'unPropertyGrid
. Vous pouvez le configurer pour contenirBrowsableAttribute.N
, de sorte que la grille de propriétés affiche toutes les non-navigable par les membres.true
)autant Que je sache, jamais.MODIFIER
J'ai eu tort.
Il est nécessaire si vous voulez faire une propriété qui a
[Browsable(false)]
dans votre classe de base (tels queUserControl.Texte
) à parcourir.Le problème est que les choses sont parcourues par défaut. Le seul scénario, je pense, où ce serait la matière est le remplacement d'un membre et changer la browsability... ici
F
est visible seulement en raison de la[Browsable(true)]
dans la classe dérivée - sans elle, il n'est pas visible.Probablement lorsque vous voulez faire sacrément sûr que personne ne la change 😛
//Do NOT add [Browsable(false)]
[Browsable(false)]
sonne un peu ridicule à moi.Les types et attributs dans ComponentModel ne sont pas spécifiquement lié à un designer. Bien que je ne connais pas de scénario précis que vous auriez besoin de "choisir" d'être designer navigable, je suppose qu'il est concevable que vous pourriez avoir certains composants designer qui assumerait consultable(false).
Je suppose qu'on pourrait également remplacer une propriété virtuelle que spécifié à parcourir(faux) et s'appliquent à parcourir(true) dans le substituée membre.
Un concepteur visuel affiche dans la fenêtre des Propriétés de ceux de ses membres qui, soit n'ont pas à parcourir attribut ou sont marqués avec le BrowsableAttribute constructeur est consultable paramètre est défini sur true. Ces membres peuvent être modifiées au moment de la conception. Les membres marqué avec le BrowsableAttribute constructeur est consultable paramètre est défini sur false ne sont pas appropriés pour la conception de l'édition en temps et, par conséquent, ne sont pas affichés dans un concepteur visuel. La valeur par défaut est vrai.
donc, la réponse est que vous n'avez jamais ont, comme c'est fait par défaut.
Selon la documentation vous voulez qu'il soit vrai quand il doit être affiché dans la fenêtre de propriété de VS. Fondamentalement, il s'applique à des catégories qui sont utilisées dans le concepteur.
true
par défaut. Vous avez seulement besoin de spécifier l'attribut lors de la configuration àfalse
.BrowsableAttribute Classe (Système D'.ComponentModel)
Les états de documentation:
[Browsable]
également la valeur par défaut est true....donc, techniquement, vous n'avez jamais besoin
[Browsable(true)]
sauf si vous voulez être très explicite.false
.Une occassion lorsque cet attribut devient important est en cours de développement de WebPart pour Sharepoint. Dans ce scénario, vous fournir des méta-informations pour Sharepoint afin de déterminer si votre partie web doit être accessible à des fins de sélection, etc. Il y a d'autres similaires des attributs tels que la Catégorie et FriendlyName, etc, qui sont également pris en compte.
Voir ci-après pour exemples:
Création d'un composant webpart avec les propriétés personnalisées
Et un autre décent avec des images de la webpart sharepoint éditeur qui reflète vos attributs:
Faire des WebParts Sharepoint interagir