是否可以隐藏PropertyGrid中的枚举值?

时间:2013-05-20 15:04:23

标签: c# .net winforms enums propertygrid

我正在使用PropertyGrid控件并使用SelectedObject属性在PropertyGrid中显示数据。我的网格中的一些属性是枚举类型。我希望能够做的是隐藏用户枚举中的一些选择。以下面的示例:我想隐藏用户的“错误”枚举。有没有办法做到这一点?

[TypeConverter(typeof(PropertySorter))]
public class Settings
{
    public enum FooType { Type1, Type2, Type3, Type4, Error };
    private FooType fakeProperty = FooType.Type1;

    public FooType FakeProperty
    {
        get { return fakeProperty; }
        set { // Do Something }
    }
}

我通过调用

PropertyGrid中显示数据
myPropertyGrid.SelectedObject = mySettings;

1 个答案:

答案 0 :(得分:7)

PropertyGrid中的可见性通常由[Browsable(...)]控制。因此,您可以将[Browsable(false)]添加到Error选项中。例如:

public enum Foo {
    A,
    [Browsable(false)] B
    C
}

enter image description here