head.WriteLine()

Donnerstag, August 24, 2006

Enumeration-Werte verbergen

In .NET 2.0 ist es möglich die Anzeige bestimmter Werte im Eigenschaftenfenster zu unterdrücken. Nehmen Sie einmal das folgende Beispiel:

public enum MyColorType
{
    Black,
    White,
    Pink
}

public MyColorType ColorType
{
    get { ... }
    set { ... }
}

Im PropertyGrid wird diese Eigenschaft nun wie folgt dargestellt:



Vielleicht wollen Sie aber dem Entwickler nicht alle Werte der MyColorType-Enumeration anzeigen. In .NET 2.0 ist es daher möglich, einzelnde Enumeration-Werte über das Browsable-Attribut auszublenden, wie das folgende Beispiel zeigt:

public enum MyColorType
{
    Black,
    White,
    [Browsable(false)] Pink
}

Das Ergebnis sähe hierbei wie folgt aus:



Sie können das Browsable-Attribut aber für die komplette Enumeration anwenden. Hierbei würden automatisch alle Eigenschaften ausgeblendet, die auf der Enumeration basieren.

[Browsable(false)]
public enum MyColorType
{
    Black,
    White,
    Pink
}